I got my forums back up and in the process of doing so - found two interesting issues.

First - Image.cfc (which is from the open source ImageCFC project) made use of a CFC method called Throw. This allowed code in the CFC to do:

<cfset throw("Paris Hilton recommend some awesome new shoes. Shaweet!")>

Unfortunately this conflicts with ColdFusion 9's built in support for throwing via script. My "fix" was to simply rename all the throw calls to xc989082903480983894840894328093289042389. Now the code does:

<cfset xc989082903480983894840894328093289042389("code readability ftw!")>

Ok... I lie. I just renamed it mythrow, and updated the method definition as well.

Now for the UI issue. The ColdFusion/General forum has a ginormous number of threads. This created the following "interesting" UI:

That's awesome, isn't it? All it needs is a unicorn or two to spruce it up.

So I thought that wouldn't fly. What I ended up doing is simply adding some logic to say - if there are so many pages, switch to a drop down:

<p>Page: <cfif attributes.pages gt 10> <select onChange="document.location.href=this.options[this.selectedIndex].value"> <cfloop index="x" from=1 to="#attributes.pages#"> <option value="#cgi.script_name#?#qs#&page=#x#" <cfif url.page is x>selected</cfif>>Page #x#</option> </cfloop> </select> <cfelse> <cfloop index="x" from=1 to="#attributes.pages#"> <cfif url.page is not x><a href="#cgi.script_name#?#qs#&page=#x#">#x#</a><cfelse>#x#</cfif> </cfloop> </cfif> </p>

Which results in:

Somewhat better I think. Full City Media, who did the original skin for Galleon 2, is sending me over a small CSS tweak for it that I'll include in the new version shipping tomorrow morning.