March 08 2010 (v4.52)
- Updated the wysiwyg editor to FCKeditor 2.6.6 (the latest v2 release) when a recent Firefox update mysteriously broke the v2.40 editor. Rick Root's CFFM is upgraded to the latest v1.31 and some (very)minor style and icon changes were made so that tool will fit just a little bit better with the look of FCKEditor.
July 09 2009 (v4.51)
- Fixed a bug in ApplicationToo.cfm so that session timeouts can be set as expected via the section's settings screen.
- Fixed a bug in the secure file pusher that crept in with the upgrade to FCKeditor 2.40.
February 09 2007 (v4.50)
- SES-Friendly names are now checked against a list of forbidden file names in case some genius decides to name a page something like OnRequestEnd, or worse. There are no reports of this ever happening but if left uncontrolled its bound to sooner or later... File list is located at /admin/filenames.txt.
- The WYSIWYG editor and its file manager were upgraded to the latest and greatest for each: FCKEditor is now at v2.4 (check out the new Full-Screen-Editor feature!). Rick Root's CFFM is now at version 1.15.
- Group permissions attached to individual users now have individual expiration dates, so you can expire a particular permission without expiring the entire user account (user account expiration was added in v4.40).
- Updated some of the context-sensitive help files -- Just the beginning of a long project.
- Removed the Menu Scheduler, which worked with the DHTML menu system -- no longer in use.
December 20th 2006 (v4.40)
- Centralized the menu color designations within /ApplicationToo.cfm, so you don't have to manually edit the templates to change menu colors.
- Centralized the body background color within /ApplicationToo.cfm, so you don't have to manually edit the template includes/inc_body.cfm to change page color.
- All request variable settings that are made in /ApplicationToo.cfm and /admin/Application.cfm have been moved into the struct request.CMonger for the sake of better organization and to prevent the possibility of name collisions within CMPro and its possible interaction with external systems.
- Vertical Graphic menu type adjusted a bit with hidden gifs to provide better top-level menu item spacing.
- Removed all but the root Application.cfm files inside of the fckeditor component to ensure the proper settings are inherited in a multi-section site.
- The initial web site content section is now named 'WebSite' rather than 'Default' to avoid potential keyword conflicts.
- When an admin adds a new section, the fckeditor installation's Application.cfm is now rewritten so it correctly pulls its settings from the admin area's Application.cfm (fixes a bug where, when using the file manager in a section other than "WebSite", the CFFM component threw an error).
- Minor change to the form post string assignment method done while trying to enable cfform instead of using html form.
- Removed the Data Manager, which has not been supported for some time. Anyone wanting direct db access should be using a direct-access data manager like SQL Server Enterprise Manager, SQLYog etc.
- Updated the readme file for creating your own language files.
- Removed the upgrader files, which were survivors of when CMonger was the commercial product CMPro. They were commented out of use in 4.30 and have now been removed entirely.
- Admins and SuperAdmins are now exempt from the field data scrubbing that occurs automatically on all form scope data submitted via the admin area (editor-based scrubbing, however, remains unchanged and independently configurable ).
- Added the ability to input hidden client-side code into the BODY area of a page (supplements the existing ability to add client-side code into the HEAD area).
- Added the ability to expire a user account (not just the password).
- Meta tag and description lines now have built-in CRLF's to combat the former behavior of lumping the keyword and description meta tags on one line.
November 25th 2006 (v4.30)
- ContentMonger Pro renamed to ContentMonger and licensing scheme changed.
- Revised the admin UI to use css-based drop-down menus, and reorganized the menus so they are never more than one drop-down deep.
- Section names can now be 50 characters long (up from 10).
- Increased the size of the data log's eventClass field from 50 to 255.
- Form and cart item options (display and storage) can now be 255 characters (up from 50).
- Changed database config for all mySQL INT fields (removed "unsigned" attribute for compatibility with mySQL 5.x).
- Added Rick Root's excellent CFFM file manager to replace the related FCKEditor components.
- Updated the robots.txt list.
- Removed the java version of the ticker applet since CMPro is going to free release and this was a purchased license.
- fixed a bug where adding a new mailing list section threw an error.
- fixed a bug where the udf folder was not copied over when creating a new section.
April 19th 2006 (v4.20)
- Upgraded WYSIWYG editor to allow Mozilla compatibility.
- Minor tweaks to optimize admin area display in Mozilla.
February 18th 2006 (v4.10)
- Added Form field aliasing, which allows developers to easily use CMPro-generated forms with custom form processors.
- Form results are dumped into a special struct that developers can tap into when using custom form data processors.
- Added developer-defined form data pre-processing. Developers can insert their own data manipulation scripts that run before CMPro's form data processor and storage system fires, thereby allowing any amount of data manipulation desired prior to committing data to disk -- while preserving the use of the CMPro data storage system.
- Added developer-defined form data post-processing. Works just like pre-processing, but the post-processing template fires after the CMPro form data processor has committed the user-submitted data to disk.
- Added slave-master replication, with text replacements. Maintain a network of affiliate web sites, mastered under a single CMPro installation. Adjust the master and propagate to the slaves. The slave sites will automatically retain unique settings that you designate (via a separate web-based utility that defines what goes where for each site). NOTE: This feature requires multi-domain licensing prior to activation.
- Over the years the occasional user has managed to create a page record without a title (usually the result of a mySQL 4.x fault and not user- or code-related). This cuts off the ability to edit/fix the page without going to a database manager. The slot is now clickable as well as the page title in the content tree.
- Made a minor improvement to the method of saving the html potion of the shopping cart. Data is stored more efficiently, without whitespace.
- Audit dumps are now stored with whitespace stripped from the html.
- When using static pages, unique page name is now only required to be unique to the current section (was formerly global to all content sections).
- Fixed a bug on multi-domain systems running administration from a single master admin area where page previews did not work.
- Fixed a bad path in the blank application.cfm template (used when creating new sections).
- Fixed a bug where, when creating new sections, the new section's home page did not have its Approval type pre-set (follows the default for the default section).
- Fixed a bug where the chosen template file set was not copied to a new section.
- Fixed a bug where a cfsqltype was misspelled in the facts box display template (affected only CF5).
July 1st, 2005 (v4.01)
- Added an application-wide error handler and removed individual full-template try/catch blocks (except for install folder). Job-specific try/catch blocks are still in place. This results in tidier code but no difference in performance.
- Added a dhtml news ticker to the code base to supplement the applet-based ticker sub-licensed for use within the system.
- Added a block to Google Web Accelerator. Thanks to Damien McKenna for the code.
- Changed all CFMAIL calls to optimize them for CF6+
- Removed all CFSILENT tags (can be pesky during development/debugging).
- Added a missing </select> tag to the form controller in the admin area, which caused a form display error in Firefox (hint: cross-browser support is coming soon!).
- Bugfix: Fixed the display of the wrong breadcrumb trail when a page is mirrored to another (showed the mirror's trail and not its reflection).
- Bugfix: Corrected a bad include path to the dictionary loader that caused an error when a MIME type failure was detected in an upload operation.
- Bugfix: Added cfoutputs around variable text output in form display for email list fields in the form editor.
April 22nd 2005 (v4.0)
- Workflow: We call it Team Review. Assign groups of users to approve or reject content revisions. Multiple modes allow simple review/approval (the CMPro default) for any user with approval rights, or designated teams can review work, with settings that allow a single administrative reviewer on the team to approve a revision, or the entire review team must sign off on changes... or something in between. Set the system so reviewers can be designated as Rejectors... Nothing gets published if a Rejector says No and blocks publication.
- Added 'sub-site' capability, where design templates can be pre-built by the developer and then new sections can use those templates via a form choice at their time of creation. The template files are automatically copied to the new location; effectively setting up new independent web sites managed by a single administrative back end with a couple of mouse clicks. Great for ISP's using CMPro to provide a just-add-water web site/CMS for their clients (multi-site licensing is required).
- Create single- and multi-question polls/surveys and display them in the Flash-formatted CFChart of your choice (several are provided). Polls can be displayed either in a sidebar (best for single-question polls) or full-page (best for multi-question surveys) at your option. View your archived (i.e. expired) poll results with a click.
- Plug in a scrolling java news ticker via the now-included applet.
- Security enhancements (details available to current CMPro users only).
- Optional audit trail dumps data to a handy, easily searched and sortable database record (sanitized of passwords and encrypted form submission data, of course), including ALL form input on the public and admin side so you can see exactly who did exactly what. Optionally shut this log off if you are not into this sort of thing and don't want to eat up the disk space.
- Added optional password expiration. Validity period is determined by whoever creates the user. The default is no password expiration for backward compatibility. Users who change their password cannot change it to the current value which prevents users with expired passwords from defeating the purpose of the password expiration process.
- Passwords are now validated to a stronger standard. Required are at least two each of uppercase, lowercase and numeric characters. No other character types are allowed. Acceptable password length has been increased to 16 characters.
- Added Maintenance Mode: Really three modes in one that allow a SuperAdmin to lock out the public side of a site, the admin side or both selectively. Visitors are dropped to a simple html page that says 'please come back later', which you can easily modify to give the look/feel of your choice.
- Added Duplicate Page Anywhere. CMPro already has mirroring, which lets you display multiple duplicates of a page while only maintaining a single master. It also has Page Defaults, which let you pre-build simple design templates which you can choose from when you create a page, but what if you want to duplicate ALL elements of an existing page, form elements included, for example? Duplicate Page Anywhere lets you create a total, complete duplicate and then customize it as needed. We created it to allow the mass-production of shopping cart items (which in CMPro are basically just a content page with a form on them) but CMPro users will no doubt find many more uses for it.
- Revised error handling to allow for more comprehensive reporting and more secure options. Errors can now be dumped into a database in addition to (or in combination with) the previous options of dumping to screen or to email. Disk dumps result in secure data staying that way if they exist in dumped scopes.
- Errors can be ignored by the system. They'll still be processed onscreen as usual, but they can also be ignored if the browser is one whose errors you don't wish to hear about (i.e. a search engine bot hitting a page it never should have gotten to out of the blue) or its a specific type of error you know about but don't want to hear about (i.e. the infamous "java.net.SocketException: Connection reset by peer: socket write error.").
- Completely revised the archived document system.
- Added support for password-type fields in the forms creation / management system.
- In addition to the fully protected (as in permissions-enforced) download links already a part of the CMPro system, convenient inline file uploads via the wysiwyg interface are now possible. These file and image uploads are segregated into their own subfolders. A user need not wade through potentially hundreds of files that are inapplicable to the current page and potentially inappropriate for them to even be aware of. The ability to link to other existing images outside of these folders is unaffected. The subfolder names correspond to the live page’s ID number (not the revision number for the live page). Deleting a live page will also delete the upload folder and the files in them.
- The FTP manager is now capable of navigating through subfolders in the upload area to allow it to keep pace with the new file/image segregation scheme.
- Create a Quick Links list that lets you create and maintain a global hot links list in your sidebar (or wherever else you see fit to put it).
- ... and more!
May 3, 2004 (v3.03)
- Altered how demo mode is set. Demo mode has always been intended to be system-wide. However it was found some users were setting only a single section into demo mode and expecting it to work. Setting one section into demo mode now sets them all in that mode.
- Added the Add a Page Anywhere template, which is much easier to use than navigating to the page you want to add a child under, and adding from there (The old method remains for the sake of flexibility and backward compatibility).
- Added pages now inherit the login level permissions of their parent. Formerly they only inherited group permissions.
- When a new section is created, many location-agnostic settings are now ported to the newly created section.
- Revised the menu scheduler so it urlencode()s the url, in case someone creates a section name with a space (best practice is to use MixedCase names). Also updated how this seldom-used template pulls some settings so it conforms to current CMPro standards.
- Revised the dhtml menu creator so it urldecode()s the url fed to it.
- Reorganized the global settings template (ApplicationToo.cfm).
- Revised the Who's On application with tighter code.
- Fixed a nasty bug in the user editor that caused it to crash when a new user was created.
April 1, 2004 (v3.02)
- Removed an undocumented form identity test that could throw an error in some circumstances.
- Changed the memory dumping code due to an issue with ColdFusion 5 and CFDUMP.
- Fixed the slightly different application name in the /admin/inc/ folder.
- Altered all SQL insert and update statements everywhere to ensure cfqueryparam's NULL parameter was expressly in use, due to an issue discovered with ColdFusion 5 and Oracle when using the Merant Oracle 8 drivers and Oracle 9i.
- The few users who have been yelling about it finally wore us down: Usernames and passwords are now supported in all cfquery statements. Ignore them if you don't need them or set them in /ApplicationToo.cfm
February 1, 2004 (v3.01)
Added the expanding/contracting content tree in the admin area, which behaves exactly like an Explorer folder tree, with persistence. Eases navigation through a large site. The view a user sets up on the content tree is mirrored on the SideLink, Bottomlink and Page Mirror trees.
Added the List View for users, to supplement the existing Tree View. Eases user management on large sites; especially when user counts climb into the thousands. Available only to system administrators, the List View shows all system users in a simple grid, where each column of the grid is sortable (ascending/descending order) and individual users can be searched for based on user name, user ID, email address etc.
Upgraded all grids to use GridMonger v3.51 (main enhancement: multi-delete feature and improved onscreen help).
Added a memory dump to the admin area home page. Utilizes CFDUMP, so the developer must disable this feature if the system will be installed on pre-CF5 systems.
The mass mailing system now incorporates full email address validation (since addressees can be imported from external sources which may be poorly validated). Each address is subjected to a 40-step validation, where each type of failure is described and logged for each failed address. A second global regex runs a final 'general' test. These and any other failures (i.e. other ColdFusion errors) in the process are logged and emailed to the sender (and displayed onscreen) at the close of the mail job.
December 31, 2003 (v3.0)
- Added the ability to freely translate any page in the CMPro admin system (including a separate, independent subsystem that translates ActivEdit). In addition to adding new languages, custom implementations of a supplied language (i.e. English) are just as feasible. This feature is the brainchild of CMPro user Ivaylo Petrov (firstname.lastname@example.org) who also came up with the initial idea for the translation mechanism and made almost all of the public area's individual template conversions.
- Added full Unicode support, including double-byte character entry. We have successfully used CMPro with Chinese (simplified and traditional), Thai, Arabic and Russian (Unicode is only supported by ColdFusion MX 6 and 6.1. Unicode support is disabled to allow compatibility with older ColdFusion versions. Easy instructions are provided in the Toolbox to re-enable it in about 3 minutes).
- Upgraded CMPro's editor (ActivEdit) to the new Version 4. The editor code remains unencrypted to allow easy developer customization, and continues tio include the optional-for-CMPro spell checker. We have customized it to allow for easy translations in the same manner as described above.
Added optional, user-specifed 'friendly' page names (i.e. 'newsletter.cfm' or 'contact.cfm' instead of 'page_127.cfm' or 'page_93.html'). This feature can be used on both of the two static publishing options, as well as the pseudo-static option (which preserves the ability to process the page dynamically).
- Added the optional shopping cart system. This system is delivered as a Toolbox application (see below), and is disabled by default, with easy enablement instructions. Some highlights:
- Any page can be a cart page. Anywhere on your store as you please.
- Leverage CMPro's existing page linking and mirroring capability to make category-listing pages, feature products etc. CMPro's content generation and organization engine, when applied to an ecommerce app, makes for tremendous flexibility.
- Create cart items directly within the existing automatic forms generator: No programming necessary. Just designate a form as a 'cart item' type, add a product illustration (html form field type), pricing options (radio buttons or a drop-down select) and specify additional options if desired (like text fields for things like product personalization).
- Your cart checkout page can be infinitely customized: Its just another CMPro auto-generated form that you control. Simply specify it as a 'cart checkout page' type when you create it.
- Cart processing is confined to a single template to make customization easy. The supplied cart system functions for a U.S.-based store system that uses Federal Express for shipping (via our FedexMonger tag), but can be easily customized to your own tax or shipping situation.
- Extremely simple checkout system includes handy 'remember-me' functionality for easy return shopping experience.
- Added the Who's On application. Who's On also shows What's Locked in the admin area, and gives administrators the ability to break a lock manually.
- Added BottomLinks to supplement SideLinks (page teasers can now be displayed in a list under the main page content, as well as to the side of it.
- Page previews show all bottom- and sidelinks intact on the preview.
- Rewote the record locking system to house locking values into a single 2d application-scope array rather than simple values. A much more efficient 2nd-generation locking scheme has been put into place.
- Increased security through various measures detailed in the CMPro change log (available only to registered users).
- Added the FTP Manager, which allows uploading, deleting and renaming of a broader range of file types than the standard user list. These files are subject to a 3mb limit. The size limit can be easily raised or lowered by setting a variable to any value desired.
- Added smarter ftp upload error messages.
- The development server can be either the generic 'localhost' or the designated IP of the developer's choice (formerly was hardcoded to 127.0.0.1).
- Created the ability to change the application time to match whatever time zone the application is perceived to be in, independent of server time.
- Added style sheet support to CMPro-generated email.
- Added the ability to target a new window with a menu link.
- Updated all grids in the admin area to the GridMonger 3.31 code base. This allows multi-line editing -- a major convenience that dramatically speeds up any grid-based editing proess.
- Added support for Windows Video files (.wmv) in mail attachments and on web page uploads.
- Added the Toolbox. A collection of code extensions that are useful but not present in the full CMPro release.
- Implemented the Milonic drop-down menu system in the Admin area to provide a cleaner display, allow for more descriptive action titles and standardize the location and display of action items. In novice user demos, we were surprised to see users moving through the system faster than we were able to once they had simply been shown the menu's existence.
- Changed how uploaded files are delivered to visitors. Files are now pushed to the client, which conceals the file's actual physical location (and allows that location to be outside the web root if desired). Full privileges and login status checks are now in place when running the file delivery, in case a url hack is attempted after a valid visit determines the download url.
- Doubled the speed of the static page generators. On a dedicated server speeds much higher than this would still be safe.
- Spiffed up the displays on the static page generator static screens and the mail_trickler status screen to match up with the look and css support implemented in v2.20.
- Moved the help files and rewrote the help display file to display directly from the original source text files. This decreases db load and makes the installation of translations much simpler.
- Built the help display file so that it can auto-sense the current language and display the appropriate help files for that language.
- Date, time and user ID of the last person to edit a page has always been stored. Now it is visible in the content editor (bottom right of screen).
- Last login date/time has always been stored for users. Now it is visible in the user tree.
- Live web pages are never edited directly. Now the revision of a page has its title displayed in the Content Tree in small print next to the live page (if the page title is changed during the revision process, this aids in clarity).
- Made numerous additional, under-the-hood changes detailed in the CMPro change log (available only to registered users)..
June 1, 2003 (v2.21)
v2.21 exists because a client commissioned new features to CMPro at a point too late to make the beta cycle of v2.20. These features were so powerful a quick minor release was warranted.
- Added: SideLinks. Link the rich html teaser of any page to the sidebar of any other page on your web site. SideLinks can be ordered as desired from the parent page's editor. A given page can be linked to any number of other pages as desired.
- Added: the Quick Facts / Snippets box. Plant a small highlight box of rich html on an individual page (typically used just under the menu, but can go anywhere in your design as needed. Since a Facts box can be stored in the Defaults storage area, the format can be saved and re-used anywhere (you can even store entire libraries of Facts for quick reference and re-use with a couple of mouse clicks).
- Added a few helpful developer-only items, tweaked a few bits of code and shuffled around some permissions on selected items to enhance ease of use. Specific details available to registered users in the change log.
May 22, 2003 (v2.20)
- Added: Page Mirroring. Create a page and associated objects (like an attached form) and redisplay it in as many places as you like. Change the source and all of your mirrors change with it automatically.
- Added: The Vertical Graphic menu type lets you use graphics in your menu system, either on every single item, or just the ones you choose. Example: Set up your top level with professional graphics and let users easily create submenus with text.
- Added: Default templates can now be stored for re-use. Any number of them can be created. Create default HTML 'skins', ready for your editorial staff to use.
- Added: Dedicated mailing lists that can also import users from an external source. Includes new form field types in the form builder that allow the insertion of names into a selected list (with opt-out checkbox automatically attached). An easy ''remove me'' template is included for you to add into your site so that users can remove themselves from lists.
- Added: The Data Manager allows administrators direct, raw, grid-type access to all fields in all tables (except the primary key fields) in the database.
- Added: The 'Make This Live' function in the content editor now previews the page about to be published directly onscreen. This is also done on page deletion confirmation dialogs.
- Added: Page teasers are now editable in their own mini ActivEdit window. Additionally, a teaser's maxlength has been increased from 255 characters to a long text field (i.e. a memo/ntext/text/CLOB field -- depending on the db platform in use).
- Added: Page teasers can now be rendered as a rich html link list of children displayed on the parent page.
- Added: Support for CFX_ImgInfo.dll to be used in conjunction with the new Vertical Graphic menu.
- The admin area has been given a system-wide facelift. Only style sheets and some judicious html have been used so display is still blazing fast.
- The Grid templates have all been rewritten to take advantage of features found in GridMonger, upon which they are largely based.
- Many new security-oriented features have been added, including hint/answer authentication in the lost password system (coexists with existing CMPro installs who do not yet have this feature). Given their nature, specific details of these changes are available to registered users only.
- Expanded support for code includes: Each page can now have up to three. Top-of-template and end-of-template are now joined by middle-of-template (just under the page headline) as an available option.
Mar 10, 2003 (v2.10)
- Added: Static pages can now be generated with a .cfm extension in addition to .html (keeps pages on the radar for state management while reducing db and processing load).
- Added: If a logged-in user fills in a form, that user's ID number is added to the form information to allow simpler entry of 'members only' forms.
- Added: the X-Mailer header item is now in all mail messages.
- Added: the X-Priority (1) header is now a part of all system-generated internal messages (but not messages sent by the mass-email system).
- Added: User lists can now be imported from external sources and placed as children under any parent user record. The import process includes sophisticated features that allow en-masse privilege and rights selection, custom selection of the fields to import and a choice of field delimiters used by the ASCII import file.
- Added: a list of forbidden words that cannot be used for passwords. ASCII word lists can be imported from external sources.
- Added: Administrative users can easily bypass ActivEdit and input raw html directly into textarea fields. this in turn bypasses the MS DHTML editing engine's forced tag completion behavior.
- The included default files now have the search and breadcrumb features pre-installed to make it easier for new users to implement these features.
- Added: A Mail-To option now exists for submitted form data. Forms can be set to echo results back to the form editor, the visitor, both or not at all (the default). The emailed results are rich html and include the custom HTML form results page, if it has been created for a particular form.
- Revised: All grid-type entry areas have been completely recoded to allow for improved functionality: User-selectable sorting, variable maxrows, selectable editing features and more. A standalone, generic version ready for your own parameters is included free for use with your other projects.
- Dozens of other small enhancements and bug-fixes. See install/changelog.txt for complete details.
December 29, 2002 (v2.01)
- Added the routines necessary to upgrade a CMPro v1.20 installation to the current standard.
- Added site-wide search facility that keeps track of relevant user permissions and restrict results accordingly.
- Added optional breadcrumb-trail navigation (Home > MyPage > My Sub-Page) that can be incorporated with a simple cfinclude into your default template.
- The install routine will now take into account development sites that use port 8500 during installation, when the install routine automatically installs the necessary default urls.
- Significantly enhanced the level of detail provided by the administrative security alert.
- Fixed a bug affecting the addition of usernames more than 10 characters long.
- Adjusted the login form: The username field had a maxlength of 20 characters.
December 1, 2002 (v2.0)
- ActivEdit 3.0 integration: CMPro2 will include the unencrypted version of ActivEdit with the Java Spell Checker. Please note administrative (i.e. root) access to the server is required to install the spell checker. Further, the java applet will require special registration (we must contact cfdev.com directly on your behalf) if you desire to use it on a live server. There is a nominal charge to current CMPro users who wish to upgrade their ActivEdit license. Contact us for details.
- A Milonic DHTML menu single-domain license is now bundled with all new CMPro purchases. Existing CMPro Users: If you purchased a copy of CMPro without this license, and wish to begin using the Milonic menu, please contact us for a discounted license purchase.
- Added truly static 'html' page publication as an option. Using static .html pages for regular visit reads rather than data-driven .cfm pages pulls a HUGE load off of both ColdFusion and your database.
- Added true 'offline' page revision editing. Live web pages are never touched during the editing process. Revisions cannot appear under any circumstances without editorial approval. The process, while complex in the background, is nearly invisible to the user.
- Added a page archive: Pages that have been replaced by a revision (or deleted) are automatically saved in a separate dated archive, and can be deleted if desired. A page archive consists of all information formerly contained on the page (i.e. the page itself, any attached form objects, permissions etc. Note: for disk space and security reasons uploaded files attached to a page are not duplicated).
- Added context-sensitive help throughout the Admin area. For those wishing to customize or extend their help system, an 'undocumented' admin interface allows this.
- Added the ability to quickly, visually move a page (and its child hierarchy) from anywhere to anywhere without using the Shortcut Grid to do it manually.
- Added page expiration dates to supplement page posting dates. Pages default to 'never expire' status.
- Added a mass email "trickler" (set to a default capacity rate of 14,400 messages per hour) that also incorporates basic mailing list importation and management. Since email messages are sent as distinct individuals with proper headers this makes them much friendlier-looking to anti-spam systems. Messages are sent as "multipart/alternative" containing rich and plain text versions of the message for universal compatibility. File attachments are also supported.
- Added CFMAILPARAMs to all internally generated CFMAIL statements for Content-Type and MIME-Version (supplements Message-ID and Reply-To).
- Added the ability to safely delete a user without using the Shortcut Grid.
- Added CFQUERYPARAM everywhere ColdFusion allows its use.
- Added a user-modifiable site-wide header to further automate design management.
- Added to setup: default url and physical path settings are determined and set automatically. Eliminates the opportunity for a first-time user to input the wrong settings.
- Enhanced user logouts so a user's unreleased record locks are certain to be flushed immediately rather than timing out under certain circumstances.
- Added Demo Mode, which allows the developer to shut off almost all changes while still allowing navigation through the admin area.
- Added settings to control DHTML menu width rather than requiring manual entries in menu/mnu_control.cfm and menu/menucaller.cfm.
- Added simple error handling to the install process (basic try/catch wraparounds). Very handy if a live server has a site-wide error handler that emails error messages rather than displaying them onscreen.
- Enhanced error reporting overall, both in quality of display/delivery and in quantity of information provided.
- Added unique path and default settings to the Form Email and Form Store sections, allowing each to have a discrete upload area walled off from any other sections.
- Added the ability to specify key length in Settings screen for CFX_PWTextcrypt.
- Added support for Sawmill screen size and depth statistics.
- Revised the Administration area to enhance usability, appearance.
- Lowercased all CFML and HTML tags for easy reading (functions and variable names use mixed case according to a consistent standard).
- Made several tweaks in the supplied style sheet and Inverted L design pertaining to Netscape Navigator 4.x appearance.
- Fixed a bug affecting additions to forms using Form Store items.
- Fixed a bug in the Preview function affecting new installs in mySQL and Oracle.
- Fixed a bug affecting some encrypted form data.
- The Shortcut Grid - the sole CFGrid applet in CMPro - has been commented off the main admin menu. Those who still want to use it may, but it is unsupported and deprecated.
July 21, 2002 (v1.20)
- ColdFusion MX compatibility. Tests run using CFMX Enterprise and Professional on all four supported database platforms.
- Record Locking keeps data safe in multiuser environments. Two dynamically named application variables establish the page lock and its owner. Subsequent visiting editors can look at content, but can't perform edit actions. Locks are released either when the user who owns the lock exits the page or when a designated period of inactivity (the same period as the preset session timeout - see below) has elapsed.
- CMPro is now capable of scaling into a clustered server environment. Session variables have been eliminated in favor of client variable-based state management, with a developer-selectable session timeout interval ranging from 1 to 480 minutes, and easily extendable beyond that with a simple code adjustment.
- Online Testing/Scoring/Certification. Now, any form can be a graded test, complete with user enrollments (only enrolled students can take a class, if you like), printable online completion certificates and more. Adds the ability to automate the task of offering online education: testing, grading and certification. Used in conjunction with CMPro's existing CMS features, plus a few new special templates dedicated to this function, and a course management system can be created.
- Now you can run your own ColdFusion code inside of CMPro. Administrators can CFInclude up to two ColdFusion templates into any page (which in turn can call however many templates you'd like).
- Uploaded files can now be left in either last-in, first-out (i.e. descending) default order or be manually ordered by an administrative user.
- If managing multiple menu systems or different web sites (i.e. CMPro ''sections'') from a single administrative back end, each section can now independently choose its page type (i.e. dynamic, quasi-static or FakeURL) independent of the other sections.
- Added direct support for the free tools CFX_GZip and CF_GZipPage (user must download and install these free tags separately). A great way to reduce the bandwidth required by HTML-intensive pages. Especially useful with large sites using the DHTML menu option.
- Added the ability to delete a form completely from a topic page with a single click + confirmation (pre-existing submitted form results are preserved).
- Deleting a topic page now also deletes the form associated with that page, if any (see above).
- The need to use recursive queries to display tree-structured data has been eliminated in many places thanks to the use of CF_Make_Tree, written by Michael Dinowitz and used with his permission.
- Forms now have a custom exit message on the processing page. Fully formatted, full-page of HTML if desired.
- Required form fields are now marked automatically with a red asterisk to make their nature immediately recognizable to users.
- The Inverted L demo sample HTML design is now much friendlier to Netscape 4.x browsers (secondary menu display spacing issue).
- The full url path to admin files can now be expressly specified in settings records (eases setup for large-site users with multiple Sections and public-side editing).
- The content preview function is now compatible with sites running multiple sections/sites out of the same admin area. A preview view is now specially marked as such.
- DHTML menu item data is now kept in its own db table, separate from the Settings record for the current section filter.
- Fixed a bug that resulted in improper display of the content tree to users with limited group privileges (users still were locked out of disallowed pages).
- Fixed a bug that caused execution to branch back to the default section from the item editing screen no matter which section was actually being edited.
- Added a file (admin/inc_groupmatch2.cfm) that allows external CF templates belonging to other systems to be integrated into the menu system and still be controlled via CMPro's security and permission framework.
March 25, 2002 (v1.17)
- Utilizes User Names instead of User ID numbers. Duplicate usernames are prevented and the system is backward-compatible with older CMPro systems using User IDs.
- Utilizes as an option a slightly modified ''FakeURL'' method of simulating static content as conceived and described by Ben Forta in his ColdFusion Developers Journal article entitled A Cure for Arachnophobia.
- Low-level admin users can now edit their own passwords in the admin area (not just via the password reset procedure)..
- Low-level admin users can now access unprocessed and processed forms through the centralized form results page rather than having to access them via the individual cotent page admin areas. Group permissions are applied to the processor so the user is shown only the forms they have rights to see.
- Bug fix. the slot re-ordering grid's default record updating method was occasionally throwing a SQL error on mySQL systems.
- Bug fix. (unintentional restriction): Uploaded, sidebar-linked files from all sections were stored in the same physical directory, which was hardcoded to a specific folder name. Uploaded sidebar files for a section can now be kept in any valid folder of the developer's choice.
- Bug fix. a user who tries to log in but is already logged in will see an error message at the bottom of the login screen (affects v1.16 only).
- Support for HierMenus has been discontinued due to its extreme per-site licensing cost (US$900-1500). Support for HVMenus has also been discontinued given the feature set and licensing available for the Milonic Menus product.
March 5, 2002 (v1.16)
- Public-side editing: If you are logged-in and properly privileged you can surf the public side of your site and jump straight to the content editor for that page (and move from there to the rest of the admin area if you like). A BIG convenience and time saver.
- Extensive Linux compatibility testing (Thanks go to user Brian Russell for his help) removed all remaining text case issues inside the system and its files.
- A mechanism is now in place that prevents duplicate form submissions while still allowing a user to fill out and submit a form multiple times if needed.
- Bugfix: The new IEncrypted form field attribute was not assigned a default value, and could cause an error when placing html blocks inside of a form. Fixed.
- A change was made to the the Milonic DHTML menu builder that allows menu items with child entries to be 'dead' (i.e. not be a live link) to conform to standard Windows menu behavior. Coding is compatible with the new v3.3.
- Mail sent from inside the system has been enhanced (via CFMAILPARAM) to properly form the messages according to the appropriate RFCs. Standard CFMAIL tag usage produces messages that red-flag spamhunters like Declude. Specifically, CFMAIL generates mail without the Reply-To and Message-ID header entries.
- An editable, data-driven site-wide footer template has been added.
- The new-user welcome email message is now partially data-driven and customizable.
- CFQUERYPARAM is used in numerous places to enhance security.
February 10, 2002 (v1.15)
- A new HTML menu type and precursor to the 'skins' feature coming in future versions: the well-known 'inverted L' design is now supported. An example of this new variant is here.
- Milonic DHTML menus are now supported (the new v3.2x), offering among other things a much-improved look and automatic text-wrapping of long items. Please honor the author's $30 registration request if you decide to use them.
- An easy, single-screen subsystem allows re-ordering the child pages of any given parent. Very handy for revisions.
- Numerous small usability / interface improvements in the Admin area based on internal use and user feedback.
- Improved style sheet support - all FONT commands removed from public side.
- Window title -- all-important to search engines -- can now be set independently for each page. Formerly defaulted to page title. Now defaults to page title if no window heading has been specified.
- System error messages can now be mailed to a separate address other than the designated primary Administrator.
- The group security features found on the admin side can now be applied to public-side pages. Coupled with the tiered access already provided you can wall off areas of your site to different classes of users with great flexibility.
- a quasi-page preview feature is available in the Content Editor: save a page, click Preview and a new window opens up showing your page content with the design applied (works on unpublished or published pages).
- The AutoForms System
- Form results pages now echo back the information input by the user, allowing them to print the form submission for their records.
- Forms have individualized email alert addresses, so anyone you choose can be notified of a given form's submission, rather than having all notices go to the system administrator.
- The Forms Store. This is an internal-use-only content section along the lines of FORM EMAIL, except this section contains user-built, frequently used and re-used form snippets (or entire forms, which can be built partially from snippets themselves). Things like a drop-down of U.S. state names, a list of months/years for credit card forms, a signup form etc. If you put a frequently re-used block of form fields into this area you can plug them all in to any form with a mouse click.
- Encryption of submitted form data (selectable for any individual form field). Defaults to use the internal CFusion_Encrypt() and CFusion_Decrypt() functions, which is NOT strong security and NOT recommended. System directly supports CFX_pwdtextcrypt, which offers RSA private/public key encryption with key strength of 512, 1024 and 2048 bits.
- Additions/Changes to the Title Status item in the Content Editor:
- Title Status has been renamed to Page Status
- 'Just a Menu Item' added, only visible if one of theDHTML menus is enabled. Allows a menu branch choice - specifically a menu item that holds child items - to NOT be a live link to a specific page. This makes 'flyout' parents behave consistently with Windows standards (the flyout link is not a live link itself, and cannot be clicked on).
- 'Not Shown on Menu' added. Allows creation of child pages that are not shown in the menu structure. Includes a simple way to paste in a list of child pages into the parent.
- 'Linked From Parent's Sidebar added. Menu choice is shown, AND title is linked in the right-hand sidebar of the parent.
- Centralized settings are now available in hvmenus/menucaller.cfm.
- Since HVMenus do not wrap automatically, the generator will now make a ''best guess'' on whether a menu item needs to wrap to multiple lines or not, how many it will need and then sets the proper item height accordingly.
- Internal to the system:
- With the upcoming rotating 'skins' feature in mind: The design of a page is now handled in the respective 'control' pages (there's one for each menu type). All shared ColdFusion functions have been moved to control.cfm. inc_tophalf.cfm still exists, but solely as a design page for use by the various ancillary pages - error messages, admin.cfm and such -- that need a design header.
- Changed how the ChildCount field in cm_Topics is handled. Increments or decrements the parent on update/deletion rather than insert/deletion. The update side runs up to 4 tests on the current in-page data and the incoming form data to determine if an increment/decrement is needed. Needed for the new Page Status options described above, and fixes a known bug in the html menu version where the 'more' tickmark on the menu would show up if a single unapproved child existed under a parent.
- Via an admin setting, the Content Tree on the admin side can optionally use CFX_fMakeTree to dramatically reduce system load when showing administrative users this formerly query-intensive template.
- Groups for content pages and users only allowed one group to be assigned to a respective topic or user. Should be unlimited and now is.
- A backup form ID in a hidden field supplements the one transmitted via the url in the FORM ACTION statement. If the url variable isn't found, the form variable is grabbed and used instead (both variables are properly scoped). This should reduce or eliminate the few rare but noted instances of browsers dropping the url variable at form submission, which in turn results in a properly submitted form with no visible title.
- Found and corrected two instances of code that pointed to an outdated form processing template.
- Changed all of the FLOAT fields in the SQL Server installation section to INT. Cures a bug (see below) and works better within the system.
- Corrected a bug that affected Microsoft Access users who used the expanding/contracting menu system. Access' insistence on returning numeric record values appended with a decimal value caused the menu to crash under certain circumstances.
January 4, 2002 (v1.10 Build B)
- Fine-tuned the installation routine: changed install file folder name from /DB/ to /Install/, created /install/index.htm so users choose from new install links on page as opposed to typing in urls.
- Put content tree information into an HTML IFrame to make scrolling through long page lists more convenient.
December 30, 2001 (v1.10)
- Publish seemingly static pages using the technique ContentMonger Pro author Matt Robertson described in Disappear From The Invisible Web (ColdFusion Developers Journal, July 2001) . Makes the (still data-driven) pages search engine submit- and crawler-friendly. Also eliminates the possibility of linkrot.
- Given the 'static' page feature described above, the Content Editor now has provisions to enter unique META Keywords and Description parameters for each of your pages. Additionally, the page title is also set as the HTML page <TITLE>.
- Upload other types of files, rather than just images. Icons reflective of the file type (Word, Excel, Acrobat, ZIP, TXT) appear in a narrow vertical sidebar running down the right side of the page.
- CFGrid is no longer used in the admin area, which has been restructured accordingly. The Shortcut Grid still exists, but is entirely optional.
- Hidden form fields are now supported in the AutoForm system.
- A custom forms processing template can be specified by an Administrator, allowing the use of CMPro-generated forms with a developer's custom processing code.
- Enhancements thoughout the admin area to enhance ease-of-use/flow.
- Automatic Linking: design changes allowed this to be handled via CFLOCATION rather than META Refresh for a seamless appearance.
- Oracle 8i/9i is now directly supported.
- Added a line to expand_menu.cfm to correct an error found in Access systems where Access returns a null value instead of the expected zero.
- Given the as-yet-unannounced licensing fees that are going to be charged for use of the HierMenus DHTML menu script by its new owners (I was quoted US$500 for a site with less than 20 pages, up to US$1,495 for unlimited pages), a new menu option is available using the much more realistically priced HVMenus script (US$25, and free for non-commercial sites). Performance using that script takes pages from an average of 90 ms to 70 ms.
- A clarification of licensing issues allows the inclusion of all HierMenus and HVMenus-specific code directly into CMPro: The separate download and installation of CMPro plugin files is no longer necessary (you still need to download the latest DHTML menu of your choice from its developer).
- The optional site map function now includes a second version that does not need a CFX extension (slower, but works anywhere).
- When adding security groups to a topic or user, a duplicate check is now performed first to keep multiple entries from being put into the same record.
December 15, 2001 (v1.00, Build B)
- Added a basic version of the low-volume mass-mailer system, presently only usable to email the users (all of them) in your ContentMonger Pro system. Inserted now just to allow us to easily make upgrade announcements. Will be a more full-featured mailer system in future releases.
- Revised the installer to create a complete set of default database records, rather than the essentials-only install used initially.
- Changed the call to Activedit to allow the html/wysiwyg tab to be shown.
- Made a minor modification to the DHTML menu calling process to make it more efficient and possibly cure a weird occasional error reported by a user.
- The current section (filter) is now shown at the top of page on the content tree.
- Fixed a bug in the access control system that allowed link sharing of public-side pages without regard to security privileges.
- Returned the CFTRY/CFCATCH error handling to the system. Was inadvertently removed during the tail end of the development process.
December 12, 2001 (v1.00) Initial Release