The "original" folder contains the installation and fail-safe templates. DO NOT EDIT OR DELETE IT. If you want to create a new default template, make a copy of the BLANK-TEMPLATE, and set the default in the administrative menus. Creating a new template is simpler that it looks. You only need to include the modified files that are different from the BBS default. Notice how /classic doesn't contain many files beyond template-config, the CSS files, and some images? If you want to customize a couple pages, then you only need to include those few pages in the template. The skinnning system will handle missing pages according to this example. <% ExecuteBBSTEmplate("/somepage.asp") %> Does somepage.asp exist in the active template's folder? Yes? Use that one else, Does somepage.asp exist in the BBS's default template folder? Yes? Use that one else, Does somepage.asp exist in the fail-safe `/original' template? Yes? Use that one Can't find somepage.asp in any of the three locations? Generate error. '=================== 'Verification Images '=================== There are two sets of verification images, normal (used for main logon page and registration) and small (used in the quick logon box on the category view page). If these are not included in a template the script uses the ones in the original template (so if you don't change them, you don't need to include them). '========== 'Guidelines '========== When creating a new template, you should follow the following guidelines: . Only include files that you have actually modified . If you are outputting data that a user has entered, always run it through BBS.ValidateField or BBS.MBBSDecode. Failure to do so can result in malicious HTML being injected into your page. When in doubt, run all output through BBS.ValidateField() ! It's better to err on the side of safety. . Whenever possible, try to avoid complex calculations inside a template. The forum supplies many pre-calculated values to the template page through the dictEnvironment and dictConfiguration objects. Using these values instead will increase page loading speeds, and help ensure compatability with future versions. If you find yourself needing to pull additional data, check the calling page first to make sure this data isn't already being supplied. . If you are offering your skin as a public download, again, double check that you are filtering HTML from outputs. You don't want to be responsible for letting someone's system be compromised.