We've just deployed an update to the forums that adds tabbed filtering by thread type and a new 'photo post' option, designed for users wanting to share images. We've also added filtering by product (to the product forums) and a swanky new 'grid view' for browsing forums by images (rather than thread titles). Finally we've fine-tuned the 'classic' skin and deployed some fixes and enhancements to the text editor.

Editor changes

We've completely updated the code underlying the editor to fix many known problems and compatibility issues. We've also added a couple of minor features in this release, including buttons to improve control over quoting and a drop-down menu for smileys.

We've been using this version internally for a few weeks now, but it's possible there are still some issues we've not identified, especially for those using less common browser/OS combinations. If you experience a problem please use our feedback system and tell us exactly what browser/OS you're using and we will try to fix it quickly. 

We are aware that there are problems with IE8 and earlier, but it is our intention to only officially support versions of Internet Explorer 9.0 and later moving forward. If you can't use IE9 or later on your PC, please consider trying FireFox, Safari or Chrome. Note that we also cannot guarantee full compatibility with Opera until the next major update.

Aside from a slightly new look to the toolbar, we've made the emoticon into a real menu... ...and added the ability to change the quote-level of a paragraph.

We are currently working on a plain text editor (with support for the 'classic' DPR markup). Right now we don't have an estimate on when this will be deployed, but the work is scheduled within the next 2-4 weeks.

Other enhancements coming soon include user options for hover text and default views, poll posts, free text tagging, the ability to 'follow' other users and better interaction between forums, profiles, galleries and challenges.

Forum filter tabs

The most immediately obvious change is on forum index pages, where you can now filter discussions by thread type (discussions, question/answers, user reviews, photo posts and 'all') and by product (where relevant). Note that 'filter by product' only works for posts tagged with a product by the original poster (we're looking at ways to backfill this tagging for older posts).

The new design allows you to quickly find and / or filter out our newer forum thread types (questions/answers, user reviews and photo posts)

We added the ability to tag posts with products 6 months ago, and now we've added the ability to filter threads using these product tags. 

Click on 'filter by product' and you'll see a grid of products that have been tagged to posts in the forum you're browsing. Click on a product to see those threads. To remove the filter click on the little 'x' by the product name.

We'll be adding enhancements to this in a future release.

We've also changed the design of the 'new thread' buttons so that they take up less vertical screen space.

New view options

You can now switch more easily between color schemes, and we've introduced a new way to browse threads containing images visually using a photo grid. Although this was designed to support the new photo post type it is enabled for almost all forums and for all posts containing images.

 New display options, from left: list view, grid view, expanded, condensed, new colors, old colors
The 'classic' skin has been refined so it no longer looks like an afterthought thrown together because so many people hated the new colors. Which absolutely isn't the case. No siree.

Photo Posts

You can now create 'photo' posts, designed for users wanting to share pictures and talk about photography (as opposed to technical stuff or image quality) whilst allowing people only interested in gear discussions to filter them out. Initially these are simply threads that are flagged as photos, but we're working on some new features including per-picture commenting/liking, a new lightbox viewer and the ability to request C&C and ratings for your images.

The new 'Photo' post type is designed for sharing photos and for inviting C&C - it is not for technical discussions about image quality. If you want to talk about photography, not cameras, use a photo post. Note photo posts can contain text, multiple images and act just like normal threads. The default view for the photos tab is the new grid view, which allows you to browse threads visually.

Note that we've manually changed a dozen or so threads in each forum into 'photo' posts, just so you can see how they will be presented in the future.

Editor changes in detail

  • Update to the new version of TinyMCE
  • New toolbar
  • Quote-level tools
  • Drop down menu for smileys
  • Improved support for copy/paste
  • Many under-the-hood changes and improvements

The biggest change under the hood is a new HTML parser / cleanup procedure. It works by parsing the post HTML and building a custom data structure from it which represents only the formatting and elements we support in forum posts. In this data structure a forum post is a sequence of paragraphs, images, lists and quotes where quotes have recursively the same format. Each paragraph then contains sequences of text elements (and links) where each can have one of the four supported formatting (bold, italic, strike-thought and underline). By the virtue of parsing a number of problematic issues are fixed including:

  • Free floating text elements that are not in paragraphs are wrapped in paragraphs.
  • Sequences of <br> elements are used to split paragrapghs.
  • Nested paragraphs are discarded.
  • Nested formatting tags are flattened and normalized.
  • Lists are normalized so that they contain only text and links (possibly formatted).
  • Links are normalized so that contain only text (possibly formatted).
  • Unwanted and potentially dangerous elements (<script>, <iframe>, <object>, comments, ...) are ignored.
  • Adjacent quotes are merged.
  • Empty paragraphs are removed.
  • Trailing whitespace elements are removed. Sequences of whitespace elements are replaced by a single space.
  • And a number of others.

The cleanup procedure is currently invoked during / before the following operations:

  • When the editor is first loaded with a quoted reply or for editing.
  • After a piece of text is pasted.
  • Before using the quote / unquote tools.

This fixes a number of known issues mostly related to the quote / unquote tool.

There are some known issues with the cleanup:

  • Since there does not seem to be a way to handle the "post paste" event, the post paste cleanup is executed via using the window.setTimout trick. This seems to be generally fine, but I've been able to break things when holding CTRL+V continuously in some browsers.
  • One of the minor annoyances with in the cleanup is that one needs to "remember" the current selection. Currently, I believe the selection can get forgotten if it starts in "unusual" places such as image captions or inside links. It should not result in garbled content, only the selection is lost.

In addition, this update also addresses the following issues:

  • Links are not lost anymore when replying or editing.
  • Copy / paste now works. Because of the cleanup, we are now able to avoid the problematic TinyMCE "paste" plugin.

The parsing and especially the normalizations the parsing does in the process (such are whitespace normalization, breaking paragraphs at <br><br>, merging quotes etc.) are all new and even thought we were using the editor internally for a couple of weeks, it's possible that are some outstanding issues.