Associate Engine : Revisions History : v3.06.27  
Home > Associate Engine > Documentation > Revisions History > v3.06.27

v3.06.27 (June 27, 2003)

Browse v3.06.27
 


Important Note

The script is now known as Associate Engine. As such, the script file is now named ae.pl (was formerly amazon.pl). Correspondingly, the names of all files and directories that formerly started with "amazon" now start with "ae" instead, such as: ae.pl, ae.key, ae-cache, ae-template, etc.



Upgrade instructions

IMPORTANT: The following are upgrade instructions. For first-time installation instructions, see Installation instructions instead.

After you do the following steps, Associate Engine will be accessible at /cgi-bin/ae.pl and it will also be accessible at /cgi-bin/amazon.pl so your current links will keep working.

  1. Download the Associate Engine .zip distribution file and unzip it into a temporary directory on your computer, such as into c:\ae

  2. Upload ae.pl to your webserver's cgi-bin directory (or to whatever directory you normally put script in). Note: If necessary, edit the first line so it indicates where Perl is on your server; default is #!/usr/local/bin/perl Note: Be sure to upload in ASCII mode and set the file permissions (i.e.: CHMOD 755 which is rwxr-xr-x).

  3. On your computer, rename ae.pl to amazon.pl and upload amazon.pl to your webserver's cgi-bin directory (or to whatever directory you normally put script in). Note: Be sure to upload in ASCII mode and set the file permissions (i.e.: CHMOD 755 which is rwxr-xr-x). On your computer, rename amazon.pl back to ae.pl. Alternative: If you have SSH shell access, then create an alias of ae.pl by using the ln (link) command: ln ae.pl amazon.pl or by using ln -s ae.pl amazon.pl (note the -s option). Note: Some webservers may report "500 Internal Error" if you try to run an aliased .pl file; in that case, upload ae.pl as amazon.pl

  4. Edit the ae.ini configuration file. See the comments there for an explanation of each variable. Then upload ae.ini to the same directory where ae.pl is located.

  5. On your computer, rename ae.ini to amazon.ini and upload amazon.ini to the same directory where ae.pl is located. On your computer, rename amazon.ini back to ae.ini. Alternative: If you have SSH shell access, then create an alias of ae.ini by using the ln (link) command: ln ae.ini amazon.ini or by using ln -s ae.ini amazon.ini (note the -s option).

  6. Upload the ae-template directory to the same directory where ae.pl is located. Use ASCII mode. If you have created your own custom templates in your ae-template directory, copy/upload them to the ae-template directory. Then you can delete the old ae-template directory.

  7. Upload the ae-format directory to the same directory where ae.pl is located. Use ASCII mode. If you have created your own custom templates in your ae-format directory, copy/upload them to the ae-format directory. Then you can delete the old ae-format directory.

  8. On your webserver, rename the ae-cache directory to ae-cache
    On your webserver, rename the ae-imgcache directory to ae-imgcache

  9. On your computer, rename amazon.key to ae.key and upload ae.key to the same directory where ae.pl is located.

  10. Using a plain text editor, such as the Windows Notepad, create a file called ae-2.ini and copy and paste the following lines into it. Then upload ae-2.ini to the same directory where ae.pl is located.

    browse.remap.books  504358
    browse.remap.283155 504358
    browse.remap.549066 504358
  11. If you wish to enable the new feature Virtual Directory, then see Virtual Directory.



General Revisions

  1. NEW FEATURE: amazon.co.uk support. amazon.co.uk is now supported using AWS for amazon.co.uk. For full details, see "Using Associate Engine with amazon.co.uk". For a live example, see www.grandshop.co.uk

  2. NEW FEATURE: Office Products. The office products section at amazon.com can now be displayed by Associate Engine by setting the mode parameter to office-products such as: /cgi-bin/ae.pl?type=browse&mode=office-products Example.

  3. NEW FEATURE: Parameters as virtual directory. On Apache linux servers, parameters can now be specified as a virtual directory. For example, "www.domain.com/amazon/type_browse/mode_music/" is equivalent to "www.domain.com/cgi-bin/ae.pl?type=browse&mode=music". For complete setup and usage details, click here.

  4. NEW FEATURE: Cross links in details. Names in product details (such as artists, authors, directors, and actors) are now linked to a search of that name. Example: the Sleepless in Seattle page now links the actors (i.e.: Tom Hanks, Meg Ryan) to searches for those names. If you prefer to have the names unlinked, then set the new configuration variable links.names to no (default is yes). In terms of formatting codes, for example, {details.authors} now shows linked author names. For plain unlinked text, add @ such as {details.authors@}

  5. NEW FEATURE: Price filtering (parameter). New script parameter price has been added so search results are filtered by price range. The type of searches that support the price script parameter are: KeywordSearch, BrowseNodeSearch, AuthorSearch, ArtistSearch, ActorSearch, DirectorSearch, ManufacturerSearch, PowerSearch. The price range is specified in cents. For example, price=2000-5000 would display only those products in the search results that have a price between $20.00 and $50.00, inclusive (i.e.: >=$20.00 and <=$50.00). This parameter can override the price configuration variable.

  6. NEW FEATURE: Price filtering (configuration). New configuration variable price has been added so search results are filtered by price range. The type of searches that support the price configuration variable are: KeywordSearch, BrowseNodeSearch, AuthorSearch, ArtistSearch, ActorSearch, DirectorSearch, ManufacturerSearch, PowerSearch. The price range is specified in cents. For example, price=2000-5000 would display only those products in the search results that have a price between $20.00 and $50.00, inclusive (i.e.: >=$20.00 and <=$50.00). This variable can be overridden by the price script parameter.

  7. NEW FEATURE: Power Search of books. New search type PowerSearch (power search) has been added that allows searching books against a variety of specific product fields similar to amazon.com's "Power Search" search feature. The format is powersearch=QUERY. For complete details, click here.

  8. NEW FEATURE: Wishlist searches. New search type WishlistSearch (wishlist search) has been added that allows displaying products from Amazon.com Wishlists. For example, /cgi-bin/ae.pl?wishlistsearch=BUWBWH9K2H77 displays Wishlist BUWBWH9K2H77

  9. NEW FEATURE: Pre-defined searches. New configuration variables search.* have been added so that searches can be pre-defined in the configuration file. For example, define configuration variable search.arnold "type=search&mode=dvd&keyword=Arnold+Schwarzenegger" (searches for Arnold Schwarzenegger DVD's) and then use it as /cgi-bin/ae.pl?search=arnold to use it. For complete details, click here.

  10. NEW FEATURE: Default search. New configuration variable search.default has been added to set the default search to perform when no URL parameters are specified (e.g.: /cgi-bin/ae.pl). Default of search.default is "" (which is the current behaviour of showing bestselling books). If you're using the store page templates, you could try search.default "template=stores" which would cause the Stores Directory to be shown.

  11. NEW FEATURE: Display of Availability. New configuration variables availability and availability.* have been added to control the display of product availability information (see {details.availability} formatting code). For complete details, click here.

  12. NEW FEATURE: Faster grid results. If results are shown as a grid by using the grid script parameter, then processing is optimized by fetching lite XML data rather than heavy XML data from amazon.com AWS. This optimization leads to faster results since less data is fetched and processed. If you need to turn off this optimization, then set the new configuration variable xml.grid.lite to no (default is yes).

  13. NEW FEATURE: Faster grid results. If results are shown as a grid by using the grid script parameter, then processing is optimized by automatically adjusting pageSize down so only sufficient data to fill the grid is fetched. For example, if pageSize is 25 and a grid of 3-columns by 2-rows is displayed (grid=c:3,r:2 ) then pageSize is adjusted down to 6 (since 3 multiplied by 2 = 6). (note: grid ifa option overrides this optimization).

  14. NEW FEATURE: Color of prices. New configuration variables have been added to set the color of prices. For results not in a grid, the color of prices is set by the prices.color configuration variable (default is #990000). For results in a grid, the color of prices is set by the prices.color.grid configuration variable (default is #339900). Note: The formatting files ae-format/* have been revised to use prices.color.

  15. NEW FEATURE: Customization of store page templates. New configuration variables store.navbar.home.* and store.navbar.here.* have been added to control the appearance of the navigation bar. For complete details, click here. Note: The page template files ae-template/store/* have been revised to use store.navbar.home.*.

  16. NEW FEATURE: Logging searches. New configuration variables log.include.* have been added to control what ae.pl calls are recorded in the ae-log.txt log file. The log configuration variable must be non-zero for logging to occur. For complete details, click here.

  17. IMPROVEMENT: Improved online documentation. The online documentation has been improved.

  18. IMPROVEMENT: Shorter URL's. The links to amazon.com product pages now use shorter URL's that look like "standard" amazon.com associate links.

  19. IMPROVEMENT: ref=nosim included in links. The refnosim configuration variable now defaults to yes thus ref=nosim is now included in amazon.com product links.

  20. IMPROVEMENT: New store page template. Store page template ae-template/store/theatrical.html has been created to better display searches that have mode=theatrical. It is an exact copy of the ae-template/store/dvd.html store template. If you have created your own dvd.html file, then just copy your dvd.html (or your vhs.html) file to theatrical.html

  21. IMPROVEMENT: New basic page templates. Basic page templates ae-template/basic2/*/ae.html have been added. These are similar to the basic page templates ae-template/basic/*/ae.html except that the sidebar has been removed. This design is useful if you do not want to promote all the product sections of amazon.com. To use these "basic2" templates, set configuration variable. template.dir to ae-template/basic2

  22. IMPROVEMENT: Cross-links in navbar. When viewing a browse node (type=browse&mode=NUMBER), the "You are here" navbar now has each sub-category name linked back to ae.pl (note: this is not possible for some browse nodes). For example, browse node 300956 (Books / Large Print / Biographies & Memoirs) has the "Books" and "Large Print" category names linked. Thus there is more cross-linking between the categories and sub-categories.

  23. IMPROVEMENT: Optimize Customer Rating. If there are no reviews for a product, then the "Customer Rating" is not show. Previously, a rating of "0.0 / 5.0" was shown.

  24. IMPROVEMENT: Optimize HTML. When using Amazon.com's Quick-Click™ buttons, the HTML is now more efficient. In particular, the qcPopUp() JavaScript function (formerly called popUp) is included only once rather than repeated for each button.

  25. IMPROVEMENT: Name in Similarity Search navbar. When doing a SimilaritySearch to find all products similar to a specified product, the name of the specified product is shown in the navbar as "Similar to NAME". Example.

  26. IMPROVEMENT: Name in Listmania! Search navbar. When doing a ListmaniaSearch to find all products of a specified Listmania list, the name of the specified Listmania list is shown in the navbar as "Listmania! NAME". Example.

  27. IMPROVEMENT: maxLoad reduced. Default of maxLoad is now 20 instead of 50.

  28. IMPROVEMENT: « and » in links. "Previous Results", "More Results" and "Click here for top sellers in ..." links now use the characters « and » instead of << and >>.

  29. FIX: NT Server. On an NT server, the ae.ini configuration file can now be placed in the same directory where ae.pl is located. Previously (on an NT server), the ae.ini file needed to be placed in the website's root directory.

  30. FIX: 500 Internal Error. The script now runs on older versions of Perl. Previously, a "500 Internal Error" was reported by the web server. Note: There are other causes of a "500 Internal Error", such as uploading the ae.pl file in binary mode or not setting the file permissions; see FAQ.

  31. FIX: Accented characters. Accented characters are now shown correctly. Example: "Civilización y cultura de España" rather than "Civilización y cultura de España". Specifically, UTF-8 16-bit characters U-00A0 thru U-00FF are now converted to HTML &name; encoding. Note: The 16-bit character Õ (U-00D5) is instead converted to ' which is what amazon.com meant.

  32. FIX: Actor Search navbar.When doing an ActorSearch with mode=video (or no mode specified), the navbar now says "DVD & VHS / name" rather than " / name". Example: Tom Hanks.

  33. FIX: store.hover defaults to yes. Configuration variable store.hover now has default value of yes so that links show a "hover" color when you move your mouse over them.

  34. FIX: Listmania! ID's. In Listmania searches, Listmania! ID's that are 11, 12, or 13-characters are now accepted. Previously, only 12 or 13-characters were considered valid.



Page Template Revisions

You can ignore the following section if you are not interested in using or modifying Page Templates (formerly known as "Results Templates").

  1. NEW FEATURE: Office Products added to page templates. In the basic and store page templates, "Office Products" has been added to the Search box drop-down menu.

  2. NEW FEATURE: Office Products page template added. A new page template for Office Products has been added to the Store page templates. The file is: ae-template/store/office-products.html See: example.

  3. NEW FEATURE: {amazon.domain}. New substitution variable {amazon.domain} has been added. Its value will be either "amazon.com" or "amazon.co.uk" depending upon the locale selected.

  4. NEW FEATURE: @ variable modifier. New substitution variable modifier @ has been added. The @ modifier removes HTML tags from the variable value. Such as {details.authors@} which is an unlinked version of {details.authors}

  5. IMPROVEMENT: Page Template default.html searched for. When the script searches for a Page Template to use, it now also searches for default.html. For the complete list of page template filenames searched for, click here.

  6. IMPROVEMENT: <!DOCTYPE ...> removed. <!DOCTYPE ...> HTML statements are discarded from the output. Some HTML editors insert <!DOCTYPE ...> statements which interfere with the correct rendering of a webpage when viewed using some web browsers. In particular, the "tabs" in the store Page Templates were not aligned when viewed using Netscape.

  7. IMPROVEMENT: Space in substitution variables. Some substitution variables that have a parameter can now handle multiple spaces or carriage returns before the parameter. These substitution variables are:



Formatting Code Revisions

You can ignore the following section if you are not interested in using or modifying the formatting codes.

  1. NEW FEATURE: {format.similarproducts.*} added. Some formatting codes have been added to ae-format/library.fmt.

    Formatting Code Revision
    {format.similarproducts} Link that says "Explore Similar Products" and links to the Similar Products Explorer for the current product. Uses {format.similarproducts.url} as the URL of the link.
    {format.similarproducts.url} URL of the Similar Products Explorer for the current product. Includes your associate ID.

  2. NEW FEATURE: {once format.NAME} added. Formatting code {once format.NAME} has been added. At the point where this formatting code occurs, the specified formatting code <!--format.NAME--> will be included but only once and nowhere else in the entire output. This is useful for including a particular formatting code only once. For example, {once format.addto.quickclick.popup} causes <!--format.addto.quickclick.popup--> to be included only once.

  3. IMPROVEMENT: {if form.PARAMETER}. Testing of URL parameter PARAMETER using the formatting code {if form.PARAMETER} now evaluates to false if the parameter PARAMETER is "0" or is missing. Previously, only a missing parameter would evaluate to false.

  4. IMPROVEMENT: Space in {if @}. Some formatting codes that have a parameter can now handle multiple spaces or carriage returns before the parameter. These formatting codes are:


  5. IMPROVEMENT: Some formatting codes in ae-format/library.fmt have been revised.

    Formatting Code Revision
    {format.list1.noResults}
    {format.list1.maxload}
    {format.list2.noResults}
    {format.list2.maxload}
    {format.grid.noResults}
    {format.grid.maxload}
    Now uses {amazon.domain} so that "Click here for ..." says the appropriate domain name (e.g.: amazon.com, amazon.co.uk, etc.).
    {format.addto.quickclick} Now uses {format.addto.quickclick.popup} and calls qcPopUp() JavaScript function.
    {format.grid.cell}
    {format.grid.cell.under}
    Now uses {if cfg.availability} to conditionally include the product's availability.
    {format.url} Now uses {if cfg.virtual.dir} to generate Virtual Directory URLs.




E.&O.E.; © Cusimano.Com Corporation; www.c3scripts.com