CFWebstore®

Version 5.72

Setting up and Running Your StoreTable of Contents

Table of Contents 2

Introducing CFWebstore® 5

Why Fusebox? 6

Installing CFWebstore® 7

Main Settings 10

Designing Your Store 13

Color Palettes 13

Style Sheets 14

Custom Layouts 15

Category & Page Templates 16

Option Picklists 19

Organizing Your Site 20

Categories 20

Pages 24

Adding Your Products 27

Product List 27

Product Form 28

Display Tab 28

Pricing Tab 30

Quantity Discounts 32

Product Options 32

Product Addons 35

Product Images 36

Related Products 37

Standard Product Options 37

Standard Product Addons 39

Product Custom Fields 40

Product Copy 40

Store Specials and Discounts 42

Some Additional Tips on Discounts 44

Gift Certificates 45

Adding Store Features 47

Feature List 47

Feature Form 48

Related Features 49

Related Products 50

Access Keys 51

Memberships 51

Setting Up The Shopping Cart 54

Shopping Cart Settings 54

Tax Settings 55

Shipping Charges 56

Shipping Settings 56

Shipping Table 57

Country Shipping Rates 58

Shipping Methods 59

UPS Shipping 59

U.S.P.S. Shipping 61

Intershipper Shipping 61

Free Shipping Promotion 62

More Information on Shipping 62

Taking Payments 64

Payment Options 64

Card Processing 65

Managing Your Orders 68

Pending Orders 68

Order Details Screen 69

Customer Details 70

Order Status 70

Shopping Cart Details 71

Shipping Information 71

Purchase Orders 72

Edit Order Status Form 72

Basket Edit Form 73

Basket Dropshipping Form 73

In Process Orders 73

Order Shipping Screen 74

Billing Tab 74

Purchase Orders/Drop Shipping Tab 75

Purchase Order Status Screen 76

Filling Purchase Orders 77

Filled Orders 77

Reports 78

User Management 80

User Settings 80

User Manager 81

User Summary 83

User Groups 84

Setting Permissions 85

Access Admin 86

Category Admin 86

Feature Admin 86

Page Admin 86

Shopping Admin 87

User Admin 87

Customer Addresses 87

Accounts 89

Bulk Emails 90

Download Users 91

My Account Page 91

Programmer’s Guide 93

Differences From Basic Fusebox 93

Home Circuit 94

Access Circuit 94

Category Circuit 95

Page Circuit 96

Feature Circuit 96

Products Circuit 97

Shopping Circuit 99

Users Circuit 102

Custom Tags 104

UNIX Support 108

Store Searches 108

Verity Search 108

SQL search 109

Email Forms 109

User Registrations 110

Database Schema 110

Error Handlers 110

Adding New Payment Gateways 111

Typical Files Used for a Category Page 112

Additional Code Tips 115

Other Useful Sites And Products 116

Introducing CFWebstore®

CFWebstore® is a Cold Fusion application used for setting up an online store and shopping cart. While someone with no knowledge of Cold Fusion can use it, it is designed to be installed and set up by a web developer with at least some experience with this scripting language. If you’ve never used Cold Fusion before, you’ll learn quickly in the process!

To use CFWebstore®, you will need a web server running at least Cold Fusion 5.0 and preferably SQL Server as well. You can use Access for your database, but this is less secure and not ideal for busy online stores. While you can run your store on non-Windows servers and other databases, these are not “officially” supported and may require some minor changes to the code.

The new 5.0 version of CFWebstore® is coded to Fusebox 3 and introduces many new features and options. Take your time to explore the product and all it can do, and make good use of this documentation when you get lost! Why Fusebox?

Whether you are new to CFWebstore® or a previous user, you may wonder what is Fusebox and why we used it for the new version. Basically, Fusebox is a framework that outlines a way to organize the code. It includes a core set of files, and best practices for how to break down the rest of the application. It allows for separation, for instance, of the page display elements and the coding logic. It is the most commonly used framework by Cold Fusion developers at this time, and is used for other languages as well such as PHP.

What this means for CFWebstore® is that by coding in Fusebox, we are structuring the application in a way that anyone familiar with Fusebox can easily follow. Those new to Fusebox can easily find more information on it, and will be learning a methodology common to many Cold Fusion projects, rather than trying to learn a methodology no one else uses.

The common follow-up question is why Fusebox 3? At the time this product was being recoded, Fusebox 4 was still being developed, and no version was available at the time for Cold Fusion 5 servers, which we wanted to continue to support. Fusebox 3 is also considerably easier to learn for coders that are new to the methodology. At some point in the future, we will migrate the code to Fusebox 4 for the improved performance.

You don’t need to install anything on your server to use Fusebox. All the core files are already included with the software. However, you may want to edit the index.cfm page of your store so it only includes the core file needed for your server version, to improve performance as much as possible.

For more information on Fusebox, visit fusebox.org and halhelms.com. You can also find a bunch of good Fusebox 3 tutorials in your documentation directory and at http://bombusbee.com/downloads.main.htm. Installing CFWebstore®

CFWebstore® is not a self-contained software application with an executable setup file. It is essentially just a very large collection of Cold Fusion templates. To use CFWebstore®, you must install the files on a server that is running at least Cold Fusion version 5.0. Installation involves little more than extracting the files into the directory which you will be using to host your store. You don’t need to install any Fusebox files, those are included in the installation file. There are just a couple more things you need to do to get the store up and running.

·  Setup the database. CFWebstore® comes with several databases. In the Database directory is the database with all the data for the sample store. If you prefer to start with a blank store, there is also a database that does not have any categories or products, etc, but includes the data needed to get started. For the best security, the database should be moved to a directory separate from the web files themselves. In addition, use Access to lock the database with a password. You can do this in Access under Tools-Security. You should also rename the database so it will not be easy for a hacker to locate it (and so it won't conflict with other CFWebstore databases on the server.) For the best security, use SQL Server instead. This provides much better protection for your information and is particularly recommended if you intend to store credit card numbers. A SQL Server backup file is provided or you can upscale from Acess using the Access Upscaling Wizard. When using the SQL backup, be sure to change the file location in the backup Options or you may have problems doing the restore. Always leave the database.cfm file in the database directory, this file is needed for the store to function properly.

·  To upscale the database from Access to SQL Server, the best method is to use the upscaling wizard available in Access. After upscaling the database to SQL server from Access you will need to change some fields, as they convert to an ntext field which causes some problems in SQL server. Simply change the fields from ntext to a varchar(4000). The fields are ParentNames in the Category table and Options and Addons in the TempBasket table. If you are starting with the SQL backup file, no changes are necessary.

·  If you are not able to do a restore or use the upscaling wizard, you can also use the SQL scripts that are provided to create the correct database structure remotely and then add the default data. To use the scripts, follow these steps:

o  Create a new database in SQL server on your remote server

o  Open Query Analyzer and select your new database on the toolbar.

o  Open the cfwebstorefb.sql script file and run it. This will create the table structure, indexes, defaults, etc. needed.

o  Open the cfwebstorefb_data.sql script file and run it. This will insert all the default settings, user data, states and countries, etc.

·  While MySQL is not officially supported (not tested on), you can also convert the database from Access to MySQL and run the software with little difficulty. You will need to be running MySQL 4.1 or greater to run CFWebstore. Be sure to use a good conversion tool like DBTools Manager that will bring in all the correct field types and default values. Use the provided database schema to check the fieldnames and make sure they are not converted to lowercase or otherwise altered in anyway. You will also need to search for any cfqueryparam settings for CF_SQL_BIT and change them to CF_SQL_TINYINT as the former is not allowed for MySQL.

·  Add a datasource in the Cold Fusion Administrator for your database. By default, the datasource name is "CFWebstore". You will probably prefer to use your store's name or some other more descriptive name. DON'T USE SPACES OR DASHES IN YOUR DATASOURCE NAME! While the Administrator will allow this, it may cause problems with your store, as the Datasource name is used when setting cookies. Also, be sure the first character of the name is a letter (not a number). Once the datasource is setup, edit the database.cfm file in the database directory with the name you are using and the username and password if the database has one. You can alternatively enter the username and password in the CF datasource definition, check with your ISP as to which method is most secure on their server. Generally defining it in the database.cfm with proper sandbox security is your best choice.

·  Setup the UPS rates database. If you plan to use the internal UPS rate tables, these are found in a separate database. If your ISP is currently hosting other CFWebstores, this database may already be set up and all you will need to do is enter the datasource name on the database.cfm file. If not, you will need to have them install this file, or you can copy the tables into your main database and use one datasource for both. Just enter the same name for the UPS datasource name. However, it is recommended that these databases be kept separate to make updating the rates each year as easy as possible. NOTE: Currently the UPS tag is no longer being maintained and rates for 2006 have not been made available. If you wish to use UPS and need more recent rates, please contact us for information on acquiring code for using the UPS Online Tools. A FedEx API tool is available now as well.

·  Install the CFX_Image tag. The install for this tag is found in the Webmaster directory. It is used for automatic creation of thumbnails in the product image gallery and resizing of images through the Image Manager. If you do not wish to use this tag or are not on a Win32 system, there is alternate code commented out that uses a CFC instead (CFMX required). You can also use the CFX_OpenImage tag which is available on some webhosts and also included in the Webmaster directory. This tag generally gives higher quality images than CFX_Image. Just do a search for CFX_Image in the store files to make either of these optional changes.

·  Before making your store live, you will want to change the Administrator password. The default login is username "admin" and password "admin". After logging in, go to the My Account page and click on the link to change the current password. This will allow you to change the password for the Administrator. You can also use the admin tools to set up other administrator accounts.

·  Before going live, you will also want to be sure to fill in your Store URL and Secure URL in the Settings table. These settings are used for various links in the store and for logging the user in securely and protecting the checkout and order viewing areas, so if they are not entered properly, you may find some things don’t work quite right! If you don’t have a secure server set up yet, and are just setting up your store, you can leave these settings blank. If you incorrectly enter these, you will need to correct it directly in the database and then add a “Refresh=Yes” to the URL to clear the cached settings.

·  You’re now ready to start setting up your store! Spend some time going over all the various store options and pages and making sure your store is configured properly. You may want to make a diagram of how your site will be structured before beginning to create your categories and store pages. Pay particular attention to the configuration on each of the main settings pages:

1.  Main Settings

2.  Shopping Cart Settings

3.  Payment Settings

4.  Shipping Settings

User SettingsMain Settings

The Main Settings control a wide variety of options for your store. These will often have site-wide effects on how your store will work so take your time and make sure you understand what each does! Let’s go over each of the settings available here: