cfml

Minor FB3Lite Feature

If you've used FB3Lite, you may or may not know that it implicitly supports a Fusebox-like circuit structure.  Both do() and include() allow you to invoke fuseactions/templates from other directories within your application, though without the circuit aliasing abstraction layer that Fusebox provides.  This is a great way to break down large applications into multiple [...]

WordPress Shortcodes in CFML

If you've used WordPress, you may have run across shortcodes.  They're little directives you type into the editor box which then evaluate dynamically when the content is rendered on the outside of you site.  Plugins can register new shortcode handlers, which are implemented as a simple function callback.  It's a really simple way to expose [...]

REReplaceCallback UDF

If you've used pretty much any modern language, you know all about callback functions.  Unfortunately CFML is capable of doing it, but the language itself doesn't leverage the feature anywhere.  In particular, a callback for the replace operation is of great value.  Ben Nadel has blogged about such things a couple times, and now I'm [...]

Public URLs via Amazon S3 CFC

I made another minor update to my Amazon S3 CFC this evening, this time to support PUTting public objects.  To this point, the CFC left the default ACL on new objects PUT on S3, meaning that you needed an authorized URL (via a query string signature) to retrieve them.  That was the use case I [...]

Front Controllers Should NOT Extend Application.cfc

I've been playing with FW/1 a bit on a personal app, and it has proven incredibly frustrating due to multiple manifestations of a single problem: your Application.cfc HAS to extend the framework in order to use the framework.  My complaint really has nothing to do with FW/1 in particular, the exact same argument could be [...]

Fusebox's Noose

From an email Sean Corfield sent to the Fusebox5 mailing list (http://tech.groups.yahoo.com/group/fusebox5/message/4566):
I just wanted to provide a brief update on [Fusebox and 4CFF]. 4CFF discussed Fusebox with TeraTech (specifically John Zhu of 4CFF and Michael Smith of TeraTech) and were unable to reach an agreement on Fusebox joining 4CFF. One particular sticking point was that [...]

Amazon CloudFront CFC

Amazon CloudFront is a CDN that sits atop their S3 file hosting service to provide caching and geographically dispersed delivery.  It's all very simple, except security.  Much like my Amazon S3 CFC's original goal, my new Amazon CloudFront CFC's primary purpose is to ease the creation of signed URLs for CloudFront.  You can grab a [...]

Implicit Blocks in Fusebox 5.5.1

The XML syntax used by Fusebox since the 4.0 version allows for conditional expressions like these:
<if condition="x GT 4″>
<true>
<set name="y" value="7″ />
</true>
<false>
<set name="y" value="3″ />
</false>
</if>

<if condition="name EQ 'barney'">
<true>
<set name="session.isSuperUser" value="true" />
</true>
</if>
In the latter case, the <true> tags are basically irrelevant, because they provide the same containership and semantic as [...]

I Had a Doubt (About CFGroovy2 and Ehcache)

A couple months ago I added Ehcache support to CFGroovy2 as an alternative to the simple HashMap/WeakReference caching that had been there since it's inception.  I waffled a little bit at the time, but it seemed like the right thing to do.  I've changed my mind, and removed the Ehcache functionality in the latest build.  [...]

imageTranslateDrawingAxis is Your Friend

I briefly mentioned imageTranslateDrawingAxis in my previous post about Fusebox flowcharts, but wanted to provide a more self-contained example of how it can be used to great effect.  The idea here is to draw a house with a window, and to do it in a relative manner, rather than an absolute manner.  Consider these two [...]