out with the old in with the new
DESCRIPTION
Out with the old in with the new. An introduction to Fusebox 3.0 for current Fusebox developers. By Erik Voldengen [email protected]. What WILL WE talk about?. Change is Good!. Look at the FB2 Methodology. Migrate to the new FB3 spec. A Sample FB2 Site. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/1.jpg)
Fusebox Conference 2001
Out with the oldin with the new
An introduction to Fusebox 3.0for current Fusebox developers
By Erik Voldengen [email protected]
![Page 2: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/2.jpg)
Fusebox Conference 2001
What WILL WE talk about?
Look at the FB2 Methodology
Migrate to the new FB3 spec
Change is Good!
![Page 3: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/3.jpg)
Fusebox Conference 2001
A Sample FB2 Site
• Let’s take a quick look at our sample FB2 application…
–index.cfm
–app_globals / app_Locals
–CF_FormURL2Attributes
–CF_BodyContent / app_Layout.cfm
![Page 4: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/4.jpg)
Fusebox Conference 2001
2 New Elements of Fusebox
• Exit FuseActions (XFAs)
• Fusedocs
![Page 5: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/5.jpg)
Fusebox Conference 2001
Exit FuseActions (XFAs)
• What is an Exit ?
Exit – an exit point of a fuse, e.g. links, forms, and redirects.
![Page 6: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/6.jpg)
Fusebox Conference 2001
Fun Time! Find the Exits
<H2><b>Envision your question to the Magic Eight Ball...</b></H2>
<BR><BR>
<A HREF="#request.self#?fuseaction=answer">VIEW YOUR ANSWER</A>
<BR><BR><BR>
<A HREF=“../#request.self#?fuseaction=cover">back to main menu</A>
![Page 7: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/7.jpg)
Fusebox Conference 2001
XFA’s – the Big Picture
The Big Picture:
We use variables
for our exit fuseactions.
![Page 8: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/8.jpg)
Fusebox Conference 2001
Defined in each FuseAction…
<cfcase value="question">
<cfset XFA.mainMenu = "cover">
<cfset XFA.answer = "answer">
<cfinclude template="dsp_question.cfm">
</cfcase>
<cfinclude template="app_locals.cfm"><cf_bodycontent><cfswitch expression = "#attributes.fuseaction#">
<cfcase value="question"><cfset XFA.mainMenu = "home"><cfset XFA.answer = "answer">
<cfinclude template="dsp_question.cfm"></cfcase><cfcase value="answer">
<cfset XFA.mainMenu = “cover"><cfset XFA.question = “question">
<cfinclude template="act_generateAnswer.cfm"><cfinclude template="dsp_answer.cfm">
</cfcase><cfdefaultcase>
Sorry, unknown fuseaction </cfdefaultcase> </cfswitch></cf_bodycontent><cfinclude template="#request.fuse_root#/app_layout.cfm">
![Page 9: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/9.jpg)
Fusebox Conference 2001
…And Used in Your Code
<H2><b>Envision your question to the Magic Eight Ball...</b></H2>
<BR><BR>
<A HREF="#request.self#?fuseaction=#XFA.answer#">VIEW YOUR ANSWER</A>
<BR><BR><BR>
<A HREF=“../#request.self#?fuseaction=#XFA.menu#">back to main menu</A>
![Page 10: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/10.jpg)
Fusebox Conference 2001
Example Exit Fuseactions
• Link<a href=“#request.self#?fuseaction=#XFA.add#”>
Add User
</a>
• Form<form action=“#request.self#?fuseaction=#XFA.edit#” method=“post”>
• Redirect<cflocation template=“#request.self#?fuseaction=#XFA.true#”>
![Page 11: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/11.jpg)
Fusebox Conference 2001
FuseDocs
The Big Picture:– Fusedocs are the blueprint of the fuse.
– You should be able to know everything about a fuse just by reading its FuseDoc.
![Page 12: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/12.jpg)
Fusebox Conference 2001
Example FuseDoc
• Let’s look at an example Fusedoc…
![Page 13: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/13.jpg)
Fusebox Conference 2001
On to the nuts and bolts…
![Page 14: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/14.jpg)
Fusebox Conference 2001
A New Prefix – fbx
• “app_” denotes “application”
• “fbx_” denotes “fusebox”
Our settings only apply to a fusebox, not the entire application, so we’re going with fbx_
![Page 15: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/15.jpg)
Fusebox Conference 2001
THE FBX FILES
• fbx_fusebox_cfxx.cfm• fbx_settings.cfm• fbx_layouts.cfm• fbx_switch.cfm• fbx_circuits.cfm
![Page 16: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/16.jpg)
Fusebox Conference 2001
What CHANGED IN index.cfm?
![Page 17: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/17.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cfinclude template="app_locals.cfm">
<cf_bodycontent>
<cfswitch expression = "#attributes.fuseaction#">
<cfcase value="cover"> <cfinclude template="dsp_cover.cfm"></cfcase>
</cfswitch>
</cf_bodycontent>
<cfinclude template=“../app_layout.cfm">
![Page 18: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/18.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm…
<cfinclude template="app_locals.cfm">
App_Locals.cfm fbx_settings.cfm
(MyGlobals.cfm = fbx_settings.cfm)
![Page 19: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/19.jpg)
Fusebox Conference 2001
fbx_settings.cfm
• Takes the place of app_globals and app_locals.
• One fbx_settings file per circuit
• Let’s take a look…
![Page 20: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/20.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cf_bodycontent></cf_bodycontent>
<cfinclude template=“../app_layout.cfm">
cf_bodycontent
app_layout.cfm
fbx_fusebox_cfxx.cfm
fbx_layouts.cfm
![Page 21: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/21.jpg)
Fusebox Conference 2001
fbx_layouts.cfm
• Layout settings for the circuit
<cfset fusebox.layoutdir=""><cfset fusebox.layoutfile=“testLayout.cfm">
Let’s take a look at a layout file…
![Page 22: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/22.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cfswitch expression = "#attributes.fuseaction#">
<cfcase value="cover"> <cfinclude template="dsp_cover.cfm"></cfcase>
</cfswitch>
Fusebox code in the cfswitch
fbx_switch.cfm
![Page 23: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/23.jpg)
Fusebox Conference 2001
Fbx_switch.cfm
• Contains the <cfswitch> code, nothing else.
![Page 24: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/24.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cfinclude template="app_locals.cfm">
<cf_bodycontent>
</cf_bodycontent>
<cfinclude template=“../app_layout.cfm">
<cfswitch expression = "#attributes.fuseaction#">
<cfcase value="cover"> <cfinclude template="dsp_cover.cfm"> </cfcase>
</cfswitch>
![Page 25: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/25.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cf_bodycontent>
</cf_bodycontent>
<cfinclude template=“../app_layout.cfm">
<cfswitch expression = "#attributes.fuseaction#">
<cfcase value="cover"> <cfinclude template="dsp_cover.cfm"> </cfcase>
</cfswitch>
![Page 26: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/26.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
<cf_bodycontent>
</cf_bodycontent>
<cfinclude template=“../app_layout.cfm">
![Page 27: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/27.jpg)
Fusebox Conference 2001
Typical FB2 index.cfm
![Page 28: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/28.jpg)
Fusebox Conference 2001
So what’s in index.cfm?
Index.cfm contains the core Fusebox file
• cfinclude the fbx_fusebox30_cfxx.cfm file
-or-
• copy/paste the code from fbx_fusebox into index.cfm
![Page 29: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/29.jpg)
Fusebox Conference 2001
Fbx_Fusebox30_CFXX.cfm
• Contains the “guts” of fusebox.
• Combines several FB2 tags (and then some)
• You never need to touch this file.
![Page 30: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/30.jpg)
Fusebox Conference 2001
All Done! That was easy!
• Transitioning from FB2 to FB3 is not as intimidating as it may sound!
• If you (or your boss) have strong resistance to change, try doing it in phases…
![Page 31: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/31.jpg)
Fusebox Conference 2001
FB TRANSITION Phases
In the real world, not every organization will switch to FB3 instantly. If this is you, you can transition your methodology in phases:
1. XFAs
2. Fusedocs
3. Plunge in 100%
![Page 32: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/32.jpg)
Fusebox Conference 2001
Questions?
Time permitting, I’d be happy to answer any questions…
![Page 33: Out with the old in with the new](https://reader031.vdocument.in/reader031/viewer/2022032805/5681337c550346895d9a8b62/html5/thumbnails/33.jpg)
Fusebox Conference 2001
Thank you!