Catalog on Demand® for ProductCart®
On demand publishing for serious merchants and their site visitors...

Author:
GreyBeard Design Group
www.greybearddesign.com
530 926 1192

Release Date: Nov 15, 2009
GBDG Version: 1.0
PC Version: 3.11 and later
License Type: Single Site


COPYRIGHT NOTICE

The contents of this file is protected under the United States copyright laws as an unpublished work, and is confidential and proprietary to GreyBeard Design Group. Its use or disclosure in whole or in part without the expressed written permission of GreyBeard Design Group is expressely prohibited.

(c) Copyright 2010 GreyBeard Design Group.
All rights reserved.


SUPPORT

If you have difficulty installing this add-on, please contact us with all relavent details at info@greybearddesign.com

If you have difficulty using the various features within Catalog on Demand's control panel, please refer to their help section and support forum.

Features

Catalog on Demand for ProductCart will allow ProductCart merchants and site visitors to publish on-demand custom catalogs and flyers, any time they wish, and with the products that they desire.

This series of scripts provides the following options:


Supported versions:

This add-on supports versions and builds of ProductCart from v3.12 forward. BTO stores are supported in the same manner as a Standard store, or Apparel if that mod is installed.

Earlier versions should be upgraded due to the security implications, and cannot otherwise be supported by GreyBeard Design Group.

Before you start:

Before you start installing this code, go to this page and sign up for a Catalog On Demand account.

It is not unusual that the names of both the "productcart" and "pcadmin" folders are changed during installation.  As you follow the instructions below, please replace those references with the appropriate folder names in your web site.


This add-on consists of the following files:
/productcart/includes/gbdg_COD_Config.asp
/productcart/includes/gbdg_COD_Functions.asp
/productcart/includes/gbdg_COD_Functions.js
/productcart/includes/gbdg_CoD_inc01.asp
/productcart/includes/gbdg_CoD_inc02.asp
/productcart/includes/gbdg_CoD_inc03.asp
/productcart/includes/gbdg_CoD_inc04.asp
/productcart/includes/gbdg_CoD_inc05.asp
/productcart/includes/gbdg_CoD_inc06.asp


Note: If you wish to cause the "Create PDF Catalog"
button to appear in the page title row of your store pages,
read the notes in the file gbdg_COD_button.css.
  /productcart/pc/gbdg_COD.css
/productcart/pc/gbdg_COD_button.css
/productcart/pc/gbdg_COD_PrdSrch.asp
/productcart/pc/gbdg_COD_PrdSrchProcess.asp
/productcart/pc/gbdg_COD_WishList.asp
/productcart/pc/gbdg_COD_WishListProcess.asp
/productcart/pc/gen_validatorv31.js

/productcart/pcadmin/gbdg_COD_DBxfer.asp
/productcart/pcadmin/gbdg_COD_DBxferProcess.asp
/productcart/pcadmin/gbdg_COD_DBxferProcessState.asp
/productcart/pcadmin/gbdg_COD_Settings.asp
/productcart/pcadmin/gbdg_COD_SettingsUpdate.asp
/productcart/pcadmin/gbdg_mods_common_admin_navigation.asp

/productcart/pc/images/bt_createPDFCatalog_default.png

For stores running the ProductCart Apparel Add-on, there are a few more files:

/productcart/includes/gbdg_COD_Functions-APP.asp
/productcart/includes/gbdg_CoD_inc01.asp
/productcart/pc/gbdg_COD_WishListProcess.asp
/productcart/pcadmin/gbdg_COD_DBxferProcess.asp


Additionally, this add-on requires customization to the following ProductCart files:

Please make a backup of your files before you customize them.

/productcart/includes/languages.asp
/productcart/includes/languagesCP.asp
    /productcart/pc/Custquotesview.asp
/productcart/pc/showbestsellers.asp
/productcart/pc/showfeatured.asp
/productcart/pc/shownewarrivals.asp
/productcart/pc/showsearchresults.asp
/productcart/pc/showspecials.asp
/productcart/pc/viewcategories.asp
    V3 only:
/productcart/pcadmin/setdropdownmenu.asp

V4 only:
/productcart/pcadmin/pcv4_navigation_links.asp
V3.51 and V4 USERS: We are also providing with this add-on the stock files from Early Impact that have been altered for this mod. If you know that your versions of these files are TOTALLY unaltered from Early Impact distribution code, you can drop these altered files into your site, bypass Step 3 below, and proceed to Step 4. If your store has already been customized, please use the instructions in Step 3 in order to merge our changes with your own.

The following folders are provided, and the folder names are representative of the versions. Match that to your store and copy the appropriate set of files to the site.

  • v3.51 with SEO mod - parent paths enabled or disabled

    • v3.51 (standard)\SEO mod installed\parent paths enabled

    • v3.51a (apparel mod)\SEO mod installed\parent paths enabled

    • v3.51 (standard)\SEO mod installed\parent paths disabled

    • v3.51a (apparel mod)\SEO mod installed\parent paths disabled

  • v3.51 without SEO mod - parent paths enabled or disabled

    • v3.51 (standard)\SEO mod NOT installed\parent paths enabled

    • v3.51a (apparel mod)\SEO mod NOT installed\parent paths enabled
  • v4.03 (or later) - parent paths enabled or disabled

    • v4.03 (standard)\parent paths enabled

    • v4.03a (apparel mod)\parent paths enabled

    • v4.03 (standard)\parent paths disabled

    • v4.03a (apparel mod)\parent paths disabled
Due to uncertain demand, we will not create these PPD versions until such time that they are requested.
  • v3.51 (standard)\SEO mod NOT installed\parent paths disabled
  • v3.51a (apparel mod)\SEO mod NOT installed\parent paths disabled

Installation Steps:

The installation process consists of 6 main tasks.
  1. Upload the new files supplied with this add-on. These appear in the "CoD Integration Code" folder.

  2. For stock, non-customized stores: Upload the altered versions of ProductCart files supplied with this add-on. These appear in the "Altered ProductCart Files" folder.

  3. For customized stores: Following the instructions provided below, edit and upload any of the 10 ProductCart files (which are altered for this mod, but which you have previously altered for prior mods) in order to integrate the new functionality.

  4. Edit your header.asp file. (Note - please read the commentes in gbdg_COD_button.css for guidance on optional CoD button placement.)

  5. Use the configuration tool provided with this add-on to establish your setting preferences.

  6. Configure your Site Visitor Publication Settings in your account at www.catalog-on-demand.com.
Ready? OK, let's get started. 

It will likely help you understand the process if you read (or at least browse) this entire document before you do anything further.
  1. Upload the NEW files supplied with this add-on:

    From the list of files (see above) provided with this add-on, upload each set of files (found in the folder labeled "CoD Integration Code") to the appropriate folders:

    /productcart/includes
    /productcart/pc
    /productcart/pc/images
    /productcart/pcadmin (or whatever you have renamed your admin folder.)


    If you have the Apparel Add-on installed, please also upload the separate set of files (found in the folder labeled "CoD Integration Code/with apparel mod") to the appropriate folders:

    /productcart/includes
    /productcart/pc


  2. Upload the ALTERED versions of ProductCart files supplied with this add-on:

    For any of the following files, if your version of these files are stock/unaltered versions as received from Early Impact, you may upload the modified version which we are providing. If you are able to upload ALL of those files, you may disregard Step 3 below. Or upload those that you can (such that you are not overlaying any custom coding you may have previously created), and follow the instructions in Step 3 for the files that WERE previously altered.

    /productcart/includes/languages.asp
    /productcart/includes/languagesCP.asp

        /productcart/pc/custquotesview.asp
    /productcart/pc/showbestsellers.asp
    /productcart/pc/showfeatured.asp
    /productcart/pc/shownewarrivals.asp
    /productcart/pc/showsearchresults.asp
    /productcart/pc/showspecials.asp
    /productcart/pc/viewcategories.asp

        V3 only:
    /productcart/pcadmin/setdropdownmenu.asp

    V4 only:
    /productcart/pcadmin/pcv4_navigation_links.asp


    Identify the subfolder (found in the folder labeled "Altered ProductCart Files") that contains the version which is equivalent to your store, and upload the files provided for that version.


  3. Customize the ProductCart files:

    You only need to complete this step if you are installing this mod over altered versions of the specified files. Note that we are providing line-by-line instructions for applying changes to those files marked in red in the list above. If you have already altered the other files (such as showbestsellers.asp, etc.) and need guidance as to how to apply the CoD changes to those files, please contact GreyBeard Design.

    Notes:
    There are many individual edits listed below. Please understand that we intentionally created a number of very small files which are referenced as "includes" so that most of the edits we ask you to perform are limited to adding one line of code in each necessary location. If we were doing this work as a single-site custom programming request, we would not build such small files. But recognizing that many merchants and developers who install this code may have a range of skills in terms of editing code, we wanted to make this install procedure as simple as possible, even at the risk of using includes in a somewhat unorthodox manner.

    We have provided a checkbox below each step which you may mark when you complete each step so that if you are interrupted during your work you will have a reminder as to where you left off.

    Each section of code to be copy/pasted into a ProductCart script (the gray textarea boxes below marked with a dotted border) has a Javascript associated with it. When you move your mouse pointer to the code box, the Javascript will automatically copy that section of code to your clipboard, ready to be pasted to the specified location within the ProductCart page. You should be able to move your mouse pointer to each box, the text is then automatically copied to memory, then you move your mouse pointer to the script being edited and hit "Ctrl-V" which will paste the code into your script.

    Again, if you feel there is an easier way to make this install process happen, or that clarification is required, please let us know. We recognize that the following represents a great deal of effort. Good luck - let us know if we can help.


    1. Open the following file in your favorite editor.

      /productcart/includes/languages.asp

      Edit A1: At the very bottom of this file, locate the following statement:

      ' end language definitions
      Immediately above that statement, paste the following:

      In the block above, please note the reference to YOURDOMAIN.COM. Please edit that line to reflect the name of your web store, along with any other preferred text changes.

      The messages above are those that will instruct your site visitor as to how to use Catalog on Demand. You may wish to review and edit these as you see fit.

      After performing the specified edit, please save your changes and close languages.asp. Upload languages.asp to the INCLUDES folder.

      Please mark this checkbox as a reminder that code edit step #A1 has been completed.



    2. Open the following file in your favorite editor.

      /productcart/includes/languagesCP.asp

      Edit B1: At the very bottom of this file, locate the following statement:

      %>
      Immediately above that statement, paste the following:



      After performing the specified edit, please save your changes and close languagesCP.asp. Upload languagesCP.asp to the INCLUDES folder.

      Please mark this checkbox as a reminder that code edit step #B1 has been completed.



    3. Open the following file in your favorite editor.

      /productcart/pc/Custquotesview.asp

      Edit C1: Near the top of the file, locate the following statement:

      v3 or v4: around line 37
      <!--#include file="../includes/adovbs.inc"-->
      Immediately below that line, paste the following:

      The result should look like:

      <!--#include file="../includes/adovbs.inc"-->
      <!--#include file="../includes/gbdg_CoD_inc01.asp"--> <%' gbdg mod for Catalog on Demand (Edit #c1) %>
      <!--#include file="../includes/emailsettings.asp"--> <%' gbdg mod for Catalog on Demand (Edit #c1) %>
      Please mark this checkbox as a reminder that code edit step #C1 has been completed.




      Edit C2: locate the following statements:
      v3 or v4: around line 54
      '*****************************************************************************************************
      ' START: Check store on/off, start PC session, check affiliate ID
      '*****************************************************************************************************

      Immediately above the first line above, paste the following:

      The result should look like:

      %><!--#include file="../includes/gbdg_CoD_inc02.asp"--><%' gbdg mod for Catalog on Demand (Edit #c2) %><%
      '*****************************************************************************************************
      ' START: Check store on/off, start PC session, check affiliate ID
      '*****************************************************************************************************
      Please mark this checkbox as a reminder that code edit step #C2 has been completed.




      Edit C3: Locate the following statement:
      v3 or v4: around line 97
      query="SELECT DISTINCT wishList.qsubmit,wishList.qdate,wishList.idquote,wishList.discountcode,configWishlistSessions.idconfigWishlistSession, configWishlistSessions.idproduct, configWishlistSessions.fPrice,configWishlistSessions.dPrice, products.description, products.serviceSpec, products.price, products.bToBPrice, products.SKU, products.stock, products.active, products.noprices,products.weight,products.noStock,products.smallImageUrl FROM (wishList INNER JOIN configWishlistSessions ON wishList.idconfigWishlistSession=configWishlistSessions.idconfigWishlistSession) INNER JOIN products ON configWishlistSessions.idproduct=products.idProduct WHERE (((wishList.idCustomer)="&pIdCustomer&") AND ((wishList.idconfigwishlistsession)<>0)) ORDER BY wishList.idquote DESC;"
      Replace that line with the following:

      The result should look like the following. Note that the following sections of code (one marked in black, and the other in maroon) are each single lines. They wrap here in these instructions but in your script they must remain all on one line. The first line is a comment, followed by a lengthy SQL query.

      ' gbdg mod for Catalog on Demand - Added "products.formquantity,products.imageURL,products.emailtext,cast(products.sDesc as varchar(8000)) sDesc,cast(products.Details as varchar(8000)) Details" to select (Edit #c3)
      query="SELECT DISTINCT wishList.qsubmit,wishList.qdate,wishList.idquote,wishList.discountcode,configWishlistSessions.idconfigWishlistSession, configWishlistSessions.idproduct, configWishlistSessions.fPrice,configWishlistSessions.dPrice, products.description, products.serviceSpec, products.price, products.bToBPrice, products.SKU, products.stock, products.active, products.noprices,products.weight,products.noStock,products.smallImageUrl,products.formQuantity,products.imageURL,products.emailtext,cast(products.sDesc as varchar(8000)) sDesc,cast(products.Details as varchar(8000)) Details FROM (wishList INNER JOIN configWishlistSessions ON wishList.idconfigWishlistSession=configWishlistSessions.idconfigWishlistSession) INNER JOIN products ON configWishlistSessions.idproduct=products.idProduct WHERE (((wishList.idCustomer)="&pIdCustomer&") AND ((wishList.idconfigwishlistsession)<>0)) ORDER BY wishList.idquote DESC;"
      Please mark this checkbox as a reminder that code edit step #C3 has been completed.




      Edit C4: Locate the following statement:
      v3 or v4: around line 101
      rstemp.Open query, Conntemp, adOpenStatic, adLockReadOnly, adCmdText
      Immediately below that line, paste the following:

      The result should look like this:

      rstemp.Open query, Conntemp, adOpenStatic, adLockReadOnly, adCmdText
      %><!--#include file="../includes/gbdg_CoD_inc06.asp"--><%' gbdg mod for Catalog on Demand (Edit #c4)
      Please mark this checkbox as a reminder that code edit step #C4 has been completed.




      Edit C5: Locate the following statement:
      v3 or v4: around line 114
      if not rstemp.eof then
            iPageCount=rstemp.PageCount

      Immediately below those lines, paste the following:

      The result should look like this:

      if not rstemp.eof then
           iPageCount=rstemp.PageCount
           gbdgCodiRecCount = rstemp.RecordCount ' gbdg mod for Catalog on Demand Get number of records returned for COD (Edit #c5)
      Please mark this checkbox as a reminder that code edit step #C5 has been completed.




      Edit C6: Locate the following statement:
      v3 or v4: around line 205
      <%
      wishListTotal=Cint(0)
      do while not rstemp.eof

      Please replace those lines with the following:

      The result should be identical to the above block
      Please mark this checkbox as a reminder that code edit step #C6 has been completed.




      Edit C7 (Standard Code): Locate the following statement:
      (If your store uses the apparel mod, please skip this and go to step C7 APP below)
      v3.12: around line 792
      v3.51: around line 803
      v4.03: around line 804
      query="SELECT products.idProduct, products.description, products.serviceSpec, products.price, products.sku, products.bToBPrice, products.stock, products.noStock, products.active, products.smallImageUrl, wishlist.pcwishlist_OptionsArray, wishlist.IDQuote,products.pcProd_BackOrder FROM wishlist, products WHERE (((products.idProduct)=[wishlist].[idproduct]) AND ((wishlist.idCustomer)="&pIdCustomer&") AND ((products.serviceSpec)=0));"
      set rstemp=server.CreateObject("ADODB.RecordSet")
      set rstemp=connTemp.execute(query)

      Please replace those lines with the following:

      The result should look like the following. Note that the following sections of code (one marked in black, and the other in maroon) are each single lines. They wrap here in these instructions but in your script they must remain all on one line. The first line is a comment, followed by a lengthy SQL query.

      ' gbdg mod for Catalog on Demand - Added "products.formquantity,products.imageURL, products.emailtext,cast(products.sDesc as varchar(8000)) sDesc,cast(products.Details as varchar(8000)) Details" to select (Edit #c7 STD)
      query="SELECT products.idProduct, products.description, products.serviceSpec, products.price, products.sku, products.bToBPrice, products.stock, products.noStock, products.active, products.smallImageUrl, wishlist.pcwishlist_OptionsArray, wishlist.IDQuote,products.pcProd_BackOrder, products.formQuantity, products.imageURL, products.emailtext,cast(products.sDesc as varchar(8000)) sDesc,cast(products.Details as varchar(8000)) Details FROM wishlist, products WHERE (((products.idProduct)=[wishlist].[idproduct]) AND ((wishlist.idCustomer)="&pIdCustomer&") AND ((products.serviceSpec)=0));"

      set rstemp=server.CreateObject("ADODB.RecordSet")
      set rstemp=connTemp.execute(query)
      <!--#include file="../includes/gbdg_CoD_inc06.asp"--><%' gbdg mod for Catalog on Demand (Edit #c7)
      Please mark this checkbox as a reminder that code edit step #C7 STD has been completed.




      Edit C7 (Apparel Mod): Locate the following statement:
      v3.12a: around line 802

      v3.51a: around line 813

      v4.03a: around line 814
      'APP-S
      query="SELECT products.idProduct, products.description, products.serviceSpec, products.price, products.sku, products.bToBPrice, products.stock, products.noStock, products.active, products.smallImageUrl, products.imageUrl,products.pcProd_ParentPrd,products.pcProd_SPInActive, wishlist.pcwishlist_OptionsArray, wishlist.IDQuote,products.pcProd_BackOrder FROM wishlist, products WHERE (((products.idProduct)=[wishlist].[idproduct]) AND ((wishlist.idCustomer)="&pIdCustomer&") AND ((products.serviceSpec)=0));"
      'APP-E
      set rstemp=server.CreateObject("ADODB.RecordSet")
      set rstemp=connTemp.execute(query)

      Please replace those lines with the following:

      The result should look like the following. Note that the section of code marked in maroon is actually one single line. It wraps here in these instructions but in your script they must remain all on one line:

      ' gbdg mod for Catalog on Demand - Added "products.formquantity, products.emailtext, products.sDesc, products.details" to select (Edit #c7 APP)
      'APP-S
      query="SELECT products.idProduct, products.description, products.serviceSpec, products.price, products.sku, products.bToBPrice, products.stock, products.noStock, products.active, products.smallImageUrl, products.imageUrl,products.pcProd_ParentPrd,products.pcProd_SPInActive, wishlist.pcwishlist_OptionsArray, wishlist.IDQuote,products.pcProd_BackOrder,products.formquantity, products.emailtext, products.sDesc, products.details FROM wishlist, products WHERE (((products.idProduct)=[wishlist].[idproduct]) AND ((wishlist.idCustomer)="&pIdCustomer&") AND ((products.serviceSpec)=0));"
      'APP-E
      set rstemp=server.CreateObject("ADODB.RecordSet")
      set rstemp=connTemp.execute(query)
      %><!--#include file="../includes/gbdg_CoD_inc06.asp"--><%' gbdg mod for Catalog on Demand (Edit #c7)
      Please mark this checkbox as a reminder that code edit step #C7 APP has been completed.




      Edit C8: Locate the following statements:
      v3.12: around line 824
      v3.12a: around line 835

      v3.51: around line 835
      v3.51a: around line 846

      v4.03: around line 836
      v4.03a: around line 847
      <% wishListTotal=Cint(0)
      do while not rstemp.eof

      Please replace those lines with the following:

      The result should be identical to the above block.

      Note that while it wraps in the box above, the string "gbdgCodiRecCount = gbdgCodiRecCount + 1" and the subsequent comments are all one line without any breaks.
      Please mark this checkbox as a reminder that code edit step #C8 has been completed.




      Edit C9: At the very bottom of the file, locate the following statements:
      </div>
      <!--#include file="footer.asp"-->

      Immediately above those lines, paste the following:

      The result should look like this:

      <% Session("gbdgCodCategoryName") = "Wish List" %><% gbdgShowCODbuttonWishlist 'gbdg mod for Catalog on Demand (Edit #c9) %>
      </div>
      <!--#include file="footer.asp"-->


      After performing the specified edit, please save your changes and close Custquotesview.asp. Upload Custquotesview.asp to the PC folder.

      Please mark this checkbox as a reminder that code edit step #C9 has been completed.




    4. Open the following file in your favorite editor.

      /productcart/pc/showsearchresults.asp

      Edit D1: Near the top of the file, locate the following statement:

      v3 or v4: around line 16 or 17
      <!--#include file="pcCheckPricingCats.asp"-->
      Immediately below that line, paste the following:

      The result should look like:

      <!--#include file="pcCheckPricingCats.asp"-->
      <!--#include file="../includes/gbdg_CoD_inc01.asp"--> <%' gbdg mod for Catalog on Demand (Edit #d1) %>
      Please mark this checkbox as a reminder that code edit step #D1 has been completed.


      Edit D2: locate the following statements:
      v3.12: around line 96
      v3.12a: around line 96

      v3.51: around line 83
      v3.51a: around line 89

      v4.03: around line 83
      v4.03a: around line 88
      '*******************************
      ' START - Don't allow empty searches
      '*******************************

      Immediately above the first line above, paste the following:

      The result should look like:

      %><!--#include file="../includes/gbdg_CoD_inc02.asp"--><%' gbdg mod for Catalog on Demand (Edit #d2) %><%
      '*******************************
      ' START - Don't allow empty searches
      '*******************************
      Please mark this checkbox as a reminder that code edit step #D2 has been completed.




      Edit D3: Locate the following statement:
      v3.12: around line 230
      v3.12a: around line 230

      v3.51: around line 217
      v3.51a: around line 223

      v4.03: around line 257
      v4.03a: around line 225
      strSQL= "SELECT "& pcv_strLimitPhrase &" A.idProduct, A.sku, A.description, A.price, A.listHidden, A.listPrice, A.serviceSpec, A.bToBPrice, A.smallImageUrl, A.noprices, A.stock, A.noStock, A.pcprod_HideBTOPrice, A.pcProd_BackOrder, A.FormQuantity, A.pcProd_BackOrder, A.pcProd_BTODefaultPrice, "& zSQL &" "
      Replace that line with the following:

      The result should look like the block above, with the understanding that the string beginning with "strsql=" is a single line. It wraps on this instruction page but in your script it MUST NOT wrap - it all goes on one long line.

      Please mark this checkbox as a reminder that code edit step #D3 has been completed.




      Edit D4: Locate the following statement:
      v3.12: around line 500
      v3.12a: around line 528

      v3.51: around line 486
      v3.51a: around line 526

      v4.03: around line 526
      v4.03a: around line 528
      totalrecords=0
      Immediately above that lines, paste the following:

      The result should look like:

      %><!--#include file="../includes/gbdg_CoD_inc05.asp"--><%' gbdg mod for Catalog on Demand (Edit #d4) %><%
      totalrecords=0
      Please mark this checkbox as a reminder that code edit step #D4 has been completed.




      Edit D5: Locate the following statement:
      v3.12: around line 534
      v3.12a: around line 562

      v3.51: around line 520
      v3.51a: around line 561

      v4.03: around line 560
      v4.03a: around line 562
      totalrecords = rs.recordcount
      Immediately below that lines, paste the following:

      The result should look like:

      totalrecords = rs.recordcount
      gbdgCODiRecCount = totalrecords ' gbdg mod forCatalog on Demand (Edit #d5)
      Please mark this checkbox as a reminder that code edit step #D5 has been completed.

      Edit D6: Locate the following statements:
      v3.12: around line 619
      v3.12a: around line 647

      v3.51: around line 605
      v3.51a: around line 646

      v4.03: around line 661
      v4.03a: around line 701
      <!--#include file="inc_srcPrdsCAT.asp"-->
      </td>
      </tr>
      <%end if%>
      <tr>
      <td colspan="2">&nbsp;</td>
      </tr>
      Note that there is a single instance of "&nbsp;" in the next to the last line. The code below needs to replace the "&nbsp;".

      (The following code results in the placement of a button that allows your site visitor to request an on-demand publication. You may place this code at any location that you find suitable within the scope of your site design or preferences.

      The result should look like this:

      <!--#include file="inc_srcPrdsCAT.asp"-->
      </td>
      </tr>
      <%end if%>
      <tr>
      <td colspan="2"><% Session("gbdgCodCategoryName") = "Search Results" %><% gbdgShowCODbuttonSearch 'gbdg mod for Catalog on Demand (Edit #d6) %></td>
      </tr>
      After performing the specified edit, please save your changes and close showsearchresults.asp. Upload showsearchresults.asp to the PC folder.

      Please mark this checkbox as a reminder that code edit step #D6 has been completed.




    5. Open the following file in your favorite editor.

      /productcart/pc/viewcategories.asp

      Edit E1: Near the top of the file, locate the following statement:

      V3: SEO mod installed - yes
      v3.12: around line 19
      v3.51: around line 20

      V3: SEO mod installed - no
      v3.12: around line 19
      v3.51: around line 20

      v4.03: around line 21
      <!--#include FILE="../includes/pcCheckPricingCats.asp"-->
      Immediately below this, paste the following:

      The result should look like:

      <!--#include file="pcCheckPricingCats.asp"-->
      <!--#include file="../includes/gbdg_CoD_inc01.asp"--> <%' gbdg mod for Catalog on Demand (Edit #e1) %>
      <!--#include file="../includes/emailsettings.asp"--> <%' gbdg mod for Catalog on Demand (Edit #e1) %>
      Please mark this checkbox as a reminder that code edit step #E1 has been completed.




      Edit E2: locate the following statements:
      V3: SEO mod installed - yes
      v3.12: around line 49
      v3.51: around line 50

      V3: SEO mod installed - no
      v3.12: around line 44
      v3.51: around line 45

      v4.03: around line 51
      intIdCategory=pTempIntSubCategory

      '*******************************
      ' START Display Settings
      '*******************************

      Immediately below the first line above, paste the following:

      The result should look like:

      intIdCategory=pTempIntSubCategory

      %><!--#include file="../includes/gbdg_CoD_inc02.asp"--><%' gbdg mod for Catalog on Demand (Edit #e2) %><%
      '*******************************
      ' START Display Settings
      '*******************************
      Please mark this checkbox as a reminder that code edit step #E2 has been completed.




      Edit E3: Locate the following statements:
      V3: SEO mod installed - yes
      v3.12: around line 304
      v3.51: around line 315

      V3: SEO mod installed - no
      v3.12: around line 294
      v3.51: around line 297

      v4.03: around line 347
      response.write dictLanguage.Item(Session("language")&"_viewCat_P_2")
      response.write strBreadCrumb
      intIdCategory=pIdCategory

      Immediately below those lines, paste the following:

      The result should look like:

      response.write dictLanguage.Item(Session("language")&"_viewCat_P_2")
      response.write strBreadCrumb
      intIdCategory=pIdCategory
      Session("gbdgCodCategoryName") = pCategoryName 'gbdg mod for Catalog on Demand (Edit #e3)
      Please mark this checkbox as a reminder that code edit step #E3 has been completed.




      Edit E4: Locate the following statement:
      V3: SEO mod installed - yes
      v3.12: around line 551
      v3.51: around line 608

      V3: SEO mod installed - no
      v3.12: around line 525
      v3.51: around line 572

      v4.03: around line 651
      query="SELECT products.idProduct, products.sku, products.description, products.price, (QUERY CONTINUES AT LENGTH)
      V3.12 only: Replace that line with the following:



      V3.51 or v4.03: Replace that line with the following:

      The result should look like the block above, with the understanding that the string beginning with "query=" is a single line. It wraps on this instruction page but in your script it MUST NOT wrap - it all goes on one long line.

      Please mark this checkbox as a reminder that code edit step #E4 has been completed.




      Edit E5: Locate the following statement (About 6 lines below the above query that we just edited.):
      V3: SEO mod installed - yes
      v3.12: around line 558
      v3.51: around line 614

      V3: SEO mod installed - no
      v3.12: around line 532
      v3.51: around line 578

      v4.03: around line 657
      rs.Open query, Conntemp, adOpenStatic, adLockReadOnly, adCmdText
      Immediately below those lines, paste the following:

      The result should look like this:

      rs.Open query, Conntemp, adOpenStatic, adLockReadOnly, adCmdText
      %><!--#include file="../includes/gbdg_CoD_inc06.asp"--><%' gbdg mod for Catalog on Demand (Edit #e5) %><%
      Please mark this checkbox as a reminder that code edit step #E5 has been completed.




      Edit E6: Locate the following statement (Again, this is about 8 lines below the location of the above edit.):
      V3: SEO mod installed - yes
      v3.12: around line 567
      v3.51: around line 623

      V3: SEO mod installed - no
      v3.12: around line 541
      v3.51: around line 587

      v4.03: around line 666
      dim iPageCount, pcv_intProductCount
      iPageCount=rs.PageCount

      Immediately below those lines, paste the following:

      The result should look like this:

      dim iPageCount, pcv_intProductCount
      iPageCount=rs.PageCount
      gbdgCODiRecCount = rs.RecordCount ' gbdg mod for Catalog on Demand - Get number of records returned for COD (Edit #e6)
      Please mark this checkbox as a reminder that code edit step #E6 has been completed.




      Edit E7: Locate the following statements:
      V3: SEO mod installed - yes
      v3.12: around line 688
      v3.51: around line 744

      V3: SEO mod installed - no
      v3.12: around line 662
      v3.51: around line 708

      v4.03: around line 787
      '=================================
      'end SORT BY drop-down
      '=================================
      %>
      </tr>

      Immediately below those lines, paste the following:

      (The following code results in the placement of a button that allows your site visitor to request an on-demand publication. You may place this code at any location that you find suitable within the scope of your site design or preferences.

      The result should look like this:

      '=================================
      'end SORT BY drop-down
      '=================================
      %>
      </tr>
      <tr><td align="center" colspan="2"><% gbdgShowCODbuttonViewcat 'gbdg mod for Catalog on Demand (Edit #e7) %>
      </td>
      </tr>


      Please mark this checkbox as a reminder that code edit step #E7 has been completed.




    6. Edit E8: Locate the following statements:
      V3: SEO mod installed - yes
      v3.12: around line 899
      v3.51: around line 954

      V3: SEO mod installed - no
      v3.12: around line 873
      v3.51: around line 919

      v4.03: around line 999
      <tr>
         <td><% call PageNav(iPagecount) %></td>
      </tr>
      </table>

      Between the </tr> and the </table>, paste the following:

      (The following code results in the placement of a button that allows your site visitor to request an on-demand publication. You may place this code at any location that you find suitable within the scope of your site design or preferences.

      The result should look like this:

      <tr>
         <td><% call PageNav(iPagecount) %></td>
      </tr>
      <tr>
         <td><% gbdgShowCODbuttonViewcat 'gbdg mod for Catalog on Demand (Edit #e8) %></td>
      </tr>
      </table>
      After performing the specified edit, please save your changes and close viewcategories.asp. Upload viewcategories.asp to the PC folder.

      Please mark this checkbox as a reminder that code edit step #E8 has been completed.




    7. Open the following file in your favorite editor.

      /productcart/pcadmin/setdropdownmenu.asp

      Edit F1 (V3 stores only): Around line 212/213, locate the following statements:

      mMenu.makeMenu('l0416','104','Global Changes','globalchanges.asp?nav=1','',190)
      <% end if
      end if
      'BTO ADDON-E %>
      Immediately below the last line, paste the following:

      The result should look like this:

      mMenu.makeMenu('l0416','104','Global Changes','globalchanges.asp?nav=1','',190)
      <% end if
      end if
      'BTO ADDON-E %>
      mMenu.makeMenu('10330','103','Catalog on Demand','','',180)
      mMenu.makeMenu('1033001','10330','Catalog on Demand Settings','gbdg_COD_Settings.asp','',180)
      mMenu.makeMenu('1033002','10330','Export To Catalog on Demand','gbdg_COD_DBxfer.asp','',180)

      After performing the specified edit, please save your changes and close setdropdownmenu.asp. Upload setdropdownmenu.asp to the PCADMIN folder.

      Please mark this checkbox as a reminder that code edit step #F1 (V3 stores only) has been completed.



    8. Open the following file in your favorite editor.

      /productcart/pcadmin/pcv4_navigation_links.asp

      Edit G1 (V4 stores only): Locate the following statement at the very bottom of the page:

      </ul>
      Immediately above that line, paste the following:

      The result should look like this:

      <!--#include file="gbdg_mods_common_admin_navigation.asp"--><%' gbdg mod %>
      </ul>

      After performing the specified edit, please save your changes and close pcv4_navigation_links.asp. Upload pcv4_navigation_links.asp to the PCADMIN folder.

      Please mark this checkbox as a reminder that code edit step #G1 (V4 stores only) has been completed.



  4. Open the following file in your favorite editor.

    /productcart/pc/header.asp

    Edit H1: Locate the following statement:

    </head>
    Immediately above that line, paste the following:

    The result should look like this:

    <script type="text/javascript" src="../includes/gbdg_COD_Functions.js"></script>
    </head>

    After performing the specified edit, please save your changes and close header.asp. Upload header.asp to the PCADMIN folder.

    Please mark this checkbox as a reminder that code edit step #H1 has been completed.



  5. You have now completed all of the edits necessary for this add-on.





  6. Configure Catalog on Demand for ProductCart - Store Settings:

    1. Log into your store admin and proceed to the "Catalog on Demand" settings in the products menu.

    2. Set the correct values for username and password from your account with www.catalog-on-demand.com

    3. Set the path for an alternate button if you have created one to match your site.

    4. Establish other settings as you see fit. One may choose to:
      • Activate or deactivate the Catalog on Demand for ProductCart feature. This controls whether the site visitor button appears on pages or not.
      • Include options (color, size, etc.) in the export to Catalog On Demand and in site visitor on-demand publications.
      • Include products marked "not for sale" in the export to Catalog On Demand and in site visitor on-demand publications.
      • Set a preference of long or short descriptions in the export to Catalog On Demand and in site visitor on-demand publications.

    5. Now you need to export your product data to Catalog On Demand.
      • From the Catalog on Demand menu in your store admin, select the EXPORT option.
      • Provide your preferred e-mail address where the associated job completion e-mail message will be sent.
      • Submit the screen. This step will take a few minutes, depending upon the size of your product database.
      • When your exported has completed the import process on Catalog On Demand's servers, an e-mail will be sent to you confirming such status.

  7. Configure your Site Visitor Publication Settings:

    This final series of steps required that you log in to your Catalog On Demand account and configure the available settings for your site visitor publications. Please refer to this quick start guide.


If you have any trouble with this installation, please email info@greybearddesign.com with all of the detail you can provide on your issue.