Digital Elephant Productions

Website Design Portfolio is a site representing several auto dealers. It has two purposes: it allows anyone to search for cars and trucks offered for sale, and it also allows the dealers (and their sales people) to compose and post ads for specific cars on various public ad sites. Features are included for tracking how many visits a posting produces, daily updates of inventory, and management of accounts by each dealer for their personnel.

Stuart Lee Rebates runs a site to give its customers a way to track the status of the rebates that the customers have applied for. I took on this job as a repair, and ended up making major modifications to the site in collaboration with a graphics designer. The result is a site that readily deals with a half-million records, and offers a great many administrative aids (protected by login). Unfortunately for this portfolio, I cannot provide access to the actual site. My favorite piece of the administrative side is a Search bar (common across several screens) that allows an administrative user to specify values to search for in particular fields of the data tables. This is constructed as a class, so that it can be instantiated in any form, and configures itself based on the MySQL table description.

Several parts of the site use AJAX techniques, principally to populate SELECT lists based on user choices. This technique makes a page very responsive, providing only the choices that actually make sense in context.

This Chemistry Adjustment Calculator is a part of a larger website. My assignment was to create a page that would allow the user (a swimming pool maintenance person) to type in the readings from a water-quality test kit along with the pool dimensions and obtain the proper amounts of various chemicals to dump into the pool to correct any non-ideal readings.

The calculations are all done in JavaScript without any reference to the web server from which the page came. All the input boxes are checked for illegal input, and use class switching to indicate that an entry is not acceptable. At considerable effort, I have managed to suppress "form submission" as a consequence of the user hitting the ENTER key; in this case, such a submission would result in a form refresh (with consequent loss of values already typed in).

To increase usability, I have added a feature to this page to create some "memory" via local cookies, to carry over from one page visit to the next the pool volume, and the selections made for chemicals used to adjust each of the readings. That way, the operator only has to choose an item from the select boxes when he starts using a new chemical (or goes to another pool).

Bookkeeping Application. This project is a multi-currency bookkeeping application designed for a small graphic design company. It makes extensive use of AJAX techniques to give the appearance of a desktop application that is available from any web browser. The only operation that causes a page reload is the file upload feature on the transaction detail screen. Everything else is handled through AJAX transactions in the background. This demonstration version is publicly available for examination; the actual site is installed behind a firewall at the customer's site. If you would like to log in (at any of three levels: guest, poster, or admin), feel free to do so. The instructions are on the login page; I have intentionally disabled any actual changes to the database. Instead of actually making a change, the site will tell you what it would have done, if it had been an actual working version. is a site representing a small company. Its owner is an intelligent and hard-working guy who does not have time to learn all about HTML, but still wants to maintain his own catalog of equipment for sale. I have built this site so that he can create, edit, and delete catalog entries with minimal attention to HTML and immediate feedback on the look of his entries. The maintenance pages are protected by password and HTTPS, and allow the owner to upload photos of his equipment as part of the entry composition process.

Last updated October 21, 2009 Webmaster