28-11-02 - WidthTimesDepth_ProductLine.txt - Norman Rouxel rouxel@attglobal.net Updated 07-10-03 - To allow for 6.1.3 changes. And to stop combining of similar items. Also added autocomplete="off" to width and Depth input fields as buggy Internet Explorer doesn't fire onchange if you use autocomplete! The following template will allow two form fields containing a Width and Depth to be entered and their product passed as the Other Info Prompt text. It would be easy to amend this to calculate volumes. This you need the section set to display Quantity on Product Page and Other Info Prompt set to something like "Dimensions:". It would be possible for someone to alter these values at Display Cart page. They could alter the total Quantity or Other Info Prompt. While this would not affect the value of the order it might create misleading details. To prevent this you can edit ActinicOrder.pm to make these fields uneditable for such products. Info on doing this is at the end of this readme. Also you might get confusing results should someone add an identical product twice. The Quantity would increase but the Other Info wouldn't. A patch to Cart.pm fixes this by treating any products with Other Info set as always different. Save the following template with a name like AreaProductLine.html and select it in your product dialogue. NETQUOTEVAR:INCLUDE Act_ProductSeparator.html NETQUOTEVAR:ENDSEPARATOR NETQUOTEVAR:PRODUCTFORMBEGIN NETQUOTEVAR:TEMPLATEBEGINXML NETQUOTEVAR:PRODUCTIMAGE NETQUOTEVAR:PRODUCTNAME NETQUOTEVAR:PRODUCTREF
NETQUOTEVAR:PRODUCTDESCRIPTION NETQUOTEVAR:EXTINFOLINK
NETQUOTEVAR:EXTINFOBUTTON
NETQUOTEVAR:PRODUCTBEGINLINKNETQUOTEVAR:PRODUCTLINKTEXTNETQUOTEVAR:PRODUCTENDLINK Width:    Depth:
NETQUOTEVAR:PRICEEXPLANATION

NETQUOTEVAR:PRODUCTPRICE
NETQUOTEVAR:DATEPROMPT NETQUOTEVAR:CARTERRORXML
NETQUOTEVAR:ADDTOCARTBUTTON
NETQUOTEVAR:TEMPLATEENDXML NETQUOTEVAR:PRODUCTFORMEND NETQUOTEVAR:NEXT Optional info on altering ActinicOrder.pm so customers cannot amend dimensions. The following is for Actinic versions prior to 6.1.3. Skip down if using 6.1.3 or greater. ############################################################################################################ Edit ActinicOrder.pm (Actinic 6.1.2 or earlier) (use a text editor - not a word processor - back it up first):- Note that you have to change the line containing 'Dimensions:' to suit your Other Info Prompt for such products. find line $ActinicOrder::s_nContext = $ActinicOrder::FROM_UNKNOWN; ADD this line immediately after it my $NorcatInfoHide = $::FALSE; find the line $sInfo = InfoHTMLGenerate($$pProduct{'REFERENCE'}, $nLineCount, $sInfo, !$bIncludeButtons, $aFailures->[$nLineCount]->{"INFOINPUT"}); INSERT the following immediately above it. if ($$pProduct{'OTHER_INFO_PROMPT'} eq 'Dimensions:') # change this to suit Other Info Prompt you use { $NorcatInfoHide = $::TRUE; } find the line (it's only a few lines down from where you are) $sInfoLine = InfoLineHTML($$pProduct{'OTHER_INFO_PROMPT'}, $sInfo, $sInfoLineHTML); ADD the following line immediately after it. $NorcatInfoHide = $::FALSE; find the line $sHTML = ""; REPLACE it with the following fragment if ($NorcatInfoHide) { $sHTML = $sValue . ""; } else { $sHTML = ""; } That's ActinicOrder.pm patched. Edit Cart.pm (Actinic 6.1.2 or earlier) (use a text editor - not a word processor - back it up first):- look for the line if( $_ ne 'QUANTITY' && ADD the following immediately above it if ( $_ eq 'INFOINPUT' ) # Norman - skip checking If Info Input { next FIND; } That's Cart.pm patched. that's that for 6.1.2 and earlier. ############################################################################################################ For Version 6.1.3 and later do the following instead. ############################################################################################################ Edit ActinicOrder.pm (Actinic 6.1.3 or later) (use a text editor - not a word processor - back it up first):- Note that you have to change the line containing 'Dimensions:' to suit your Other Info Prompt for such products. find line $ActinicOrder::s_nContext = $ActinicOrder::FROM_UNKNOWN; ADD this line immediately after it my $NorcatInfoHide = $::FALSE; find the line $pProduct = $CurrentItem{'PRODUCT'}; ADD the following immediately after it. if ($$pProduct{'OTHER_INFO_PROMPT'} eq 'Dimensions:') # change this to suit Other Info Prompt you use { $NorcatInfoHide = $::TRUE; } find the line $sQuantityText = "