| Ticket |
Description |
Notes |
| #54 |
FUSEBOX_CALLER_PATH for chained includes |
If you try to include a Fusebox application's index.cfm from a file in another directory, Fusebox 5 miscalculated the location of the application root and applications failed to run. This optional variable can now be set in the application's index.cfm file to override the default calculation and force Fusebox 5.1 to recognize a specific application root. |
| #73 |
Plugins ought to have custom attributes too |
The <plugin> declaration can now have custom XML attributes, indicated by XML namespace declarations on the enclosing <fusebox> tag. The fuseboxPlugin object now has a getCustomAttributes(namespace) method that returns custom attributes for the specified namespace, just as Fusebox 5 provided for classes and fuseactions. |
| #89 |
Add javascript support for <relocate/> tag |
type="javascript" causes the <relocate> verb to generate JavaScript? that will cause a redirect in the browser. See also #128 below. |
| #95 |
Global Lexicons/Errortemplates/plugins |
Fusebox 5.1 allows easier sharing of common application elements between multiple Fusebox applications. You can override the default location of lexicons, error templates and plugins (and, in fact, the parsed files) by specifying <parameter> tags in the fusebox.xml file. You can specify relative paths (relative to the application root) or absolute paths which will be treated as relative to your ColdFusion webroot or resolved via ColdFusionmappings. An individual lexicon's location can be overridden by specifying an absolute path in the XML namespace declaration. An individual plugin's location can be overridden by specifying an absolute path in the optional path attribute in the <plugin> declaration. |
| #128 |
Add support for 301 Moved Permanently to relocate verb |
type="moved" causes the <relocate> verb to generate a status code of 301 and a status header of Moved Permanently along with a Location header to force a redirect. See also #89 above. |
| #135 |
Strict mode check for both .xml and .xml.cfm files |
If you have both fusebox.xml and fusebox.xml.cfm, Fusebox silently selects the .xml.cfm version. Similarly with circuit.xml and circuit.xml.cfm. In Fusebox 5.1, enabling strict mode will cause the presence of both versions of a given file to be treated as an error. |
| #139 |
Add absolute path support to a circuit definition in the fusebox.xml file |
The <circuit> declaration in the fusebox.xml file now allows a relative="true|false" attribute to specify whether the path attribute specifies a relative path (relative to the application root) or an absolute path that is relative to the ColdFusion webroot or is resolved via a ColdFusionmapping. This allows circuits to be moved outside of the application root more easily, as well as allowing multiple Fusebox applications to share circuits more easily. |
| #141 |
change to xfa verb processing to support dots in xfa value |
In Fusebox 5 and earlier, the <xfa> value attribute could include URL parameters and those in turn could include dots (.) in the parameter names. This confused the logic that tried to add the default circuit name to <xfa> values that were not of the form circuitname.fuseactionname. In order not to break any programs relying on that bug, Fusebox 5.1 does not change the default behavior but when strict mode is enabled, URL parameters are no longer allowed in an <xfa> value. In addition, <xfa> now allows <parameter> child tags to specify URL parameters (name/value pairs). |
| #158 |
Better error when phase contains non-plugin declarations |
The <phase> declaration in fusebox.xml now only allows <plugin> declarations with a clearer error message if you tried to put regular <fuseaction> verbs in a <phase> declaration. |
| #164 |
Provide an "event" object to encapsulate attributes scope so that CFC usage becomes easier |
For folks who like an object-oriented style, a new variable, "event", exists alongside the "attributes" scope variable. The "event" variable is an object that provides "hasValue(key)", "getValue(key)" and "setValue(key,value)" methods (just like the event object in Model-Glue). |
| #165 |
Add build.xml to make deploying skeleton easier |
An ant build script has been added to the skeleton application. If you change the target property to match your own webroot, the script will copy the skeleton files into your webroot as "skeleton". If you use CFEclipse, this means that setting up new Fusebox applications becomes a matter of a few mouse clicks. |
| #168 |
Add sample lexicons for ColdSpring and Reactor |
Sample lexicons - provided by Nathan Strutz and Qasim Rasheed - have been added to the skeleton application that make it easy to use ColdSpring and Reactor with your Fusebox applications. See the instructions inside these files for more details. |
| #180 |
<if> does not validate children |
Now it checks that <if> only contains <true> and <false> children |
| #184 |
Add xfa= attribute to <relocate> |
Instead of specifying a URL, you can specify just an XFA name. Also took this opportunity to add a number of new fusebox.xml parameters to control how URLs are constructed and provided default 'self' and 'myself' values |
Add Comment