<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2650.12">
<TITLE>RE: Nested Fuesbox apps</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=2>Noam et al,</FONT>
</P>
<P><FONT SIZE=2>As long as you are only giving them a fuseaction and a fusewire, thus
keeping it all clean to the user, you can pass a single fuseaction from within
formurl2attributes (or whatever it is) to the fusebox you are in, which is not defined
by the fuseaction, but by the fusewire which is the thing that is changed.</FONT></P>
<P><FONT SIZE=2>The point is not that we are to use ListFirst() in the CFSWITCH, but
how we can avoid having to relearn a coding technique. As soon as we do put
ListFirst() in the CFSWITCH, then we are adding a level of complexity that would begin
to undermine the simplicity of fusebox. However, if we have a fusewire, then we
can continue to use the fuseaction in the cfswitch with all certainty that it is
compatible and without having to relearn anything about the coding for a
fusebox.</FONT></P>
<P><FONT SIZE=2>In essence, using a fusewire, you can create nested apps without the
need for coding the fusebox with anything other than the normal fusebox methodology,
making code re-use and checking other people's code extremely easy.</FONT></P>
<P><FONT SIZE=2>There is only then a single fuseaction for every fusebox, and a
fusewire to tell it which fusebox to use. Variables.fuseaction is not necessary
(as you have pointed out) because it is already set. This is just an extra building
block for fusebox to incorporate nesting of fuseboxes, not a "lets change
fusebox" to add the functionality for nested fuseboxes. It adds one
variable from which the fuseaction can be retrieved in a nested environment and can be
used for single fuseboxes as well.</FONT></P>
<P><FONT SIZE=2>Please can other people join this discussion because it is still only
an idea to me, and I may well not have thought of some things. I am most
interested in keeping the syntax clean and simple, something which Cold Fusion and
especially fusebox does and so I don't want to complicate things without reason.
I do feel that using ListFirst() could be an over complication when things like
formurl2attributes is used and could be used to do more.</FONT></P>
<P><FONT SIZE=2>Paul</FONT>
</P>
<P><FONT SIZE=2>PS I have come to the conclusion that a fusewire is a great idea, and
will try to use it in applications.</FONT>
</P>
<P><FONT SIZE=2>PPS The second of my two previous suggestions seems much more clean
than the first.</FONT>
</P>
<P><FONT SIZE=2>PPPS I have tried to turn off mime things, but the flipping mail
server is playing up. Not my fault!</FONT>
</P>
<P><FONT SIZE=2>PPPPS Putting in a nested fusebox may mean having to use some
functionality from further up the fusebox, so going down each fusebox makes sense, not
just jumping straight to the fusebox. So using a fusewire is an excellent way of
tracking how you get to something. Bear in mind that a search may be used from
two different fuses ie home.books.search and home.cds.search and it may well be
important which it comes through as variables may be set on the way via various
app_locals.cfm files.</FONT></P>
<P><FONT SIZE=2>> -----Original Message-----</FONT>
<BR><FONT SIZE=2>> From: BOROVOY Noam [<A
HREF="mailto:[EMAIL PROTECTED]">mailto:[EMAIL PROTECTED]</A>]</FONT>
<BR><FONT SIZE=2>> Sent: 24 July 2000 11:50</FONT>
<BR><FONT SIZE=2>> To: '[EMAIL PROTECTED]'</FONT>
<BR><FONT SIZE=2>> Subject: RE: Nested Fuesbox apps</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Paul,</FONT>
<BR><FONT SIZE=2>> Good ideas, though I would like to try and keep it as simple
</FONT>
<BR><FONT SIZE=2>> as possible:</FONT>
<BR><FONT SIZE=2>> what Hal suggested was to use ListFirst() in the CFSWITCH
</FONT>
<BR><FONT SIZE=2>> (then there is no</FONT>
<BR><FONT SIZE=2>> variables.fuseaction - I put it in the example to try and
clarify what</FONT>
<BR><FONT SIZE=2>> happens).</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> About trying to keep backward compatibility - either the </FONT>
<BR><FONT SIZE=2>> fuseaction has a</FONT>
<BR><FONT SIZE=2>> single action and then all works fine - or it has more than
</FONT>
<BR><FONT SIZE=2>> one (nested</FONT>
<BR><FONT SIZE=2>> case) and then it breaks which is correct - shouldn't pass a
nested</FONT>
<BR><FONT SIZE=2>> fuseaction to a fusebox which doesn't support it.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Noam</FONT>
<BR><FONT SIZE=2>> P.S. please turn off the MIME when sending to the list - it
</FONT>
<BR><FONT SIZE=2>> creates messages</FONT>
<BR><FONT SIZE=2>> double the size... (both MIME and plain text)</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> ----------</FONT>
<BR><FONT SIZE=2>> From: Paul Johnston
[SMTP:[EMAIL PROTECTED]]</FONT>
<BR><FONT SIZE=2>> Sent: Monday, 24 July 2000
12:25</FONT>
<BR><FONT SIZE=2>> To:
'[EMAIL PROTECTED]'</FONT>
<BR><FONT SIZE=2>> Subject: RE: Nested Fuesbox
apps</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> This message is in MIME format.
Since your mail reader does not</FONT>
<BR><FONT SIZE=2>> understand</FONT>
<BR><FONT SIZE=2>> this format, some or all of this
message may not be legible.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>>
------_=_NextPart_001_01BFF559.5E91EF60</FONT>
<BR><FONT SIZE=2>> Content-Type: text/plain;</FONT>
<BR><FONT SIZE=2>>
charset="iso-8859-1"</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> How about instead of having a
fuseaction with lots of </FONT>
<BR><FONT SIZE=2>> fuseactions in</FONT>
<BR><FONT SIZE=2>> it,</FONT>
<BR><FONT SIZE=2>> call it a fusewire? That
way you cannot get confused with</FONT>
<BR><FONT SIZE=2>> attributes.fuseaction and
variables.fuseaction? You can then put</FONT>
<BR><FONT SIZE=2>> attributes.fuseaction =
ListFirst(attributes.fusewire) </FONT>
<BR><FONT SIZE=2>> and remove</FONT>
<BR><FONT SIZE=2>> that</FONT>
<BR><FONT SIZE=2>> element to create the fusewire to
pass on. One </FONT>
<BR><FONT SIZE=2>> variable passed, two</FONT>
<BR><FONT SIZE=2>> separate variables used. The
fusewire can then be </FONT>
<BR><FONT SIZE=2>> available at any</FONT>
<BR><FONT SIZE=2>> point</FONT>
<BR><FONT SIZE=2>> with an easy and intuitive name.
</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Home Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> request.callerFuseaction:
BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> fusewire:
BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>>
fuseaction:
Bookstore</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Bookstore Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> request.callerFuseaction:
BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>>
fusewire:
Cart.AddItem</FONT>
<BR><FONT SIZE=2>>
fuseaction:
Cart</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Cart Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> request.callerFuseaction:
BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>>
fusewire:
AddItem</FONT>
<BR><FONT SIZE=2>>
fuseaction:
AddItem</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Another possible way of doing it,
is to call</FONT>
<BR><FONT SIZE=2>> request.callerFuseaction the</FONT>
<BR><FONT SIZE=2>> fusewire and add a numerical
variable at the end of it to say at</FONT>
<BR><FONT SIZE=2>> which level</FONT>
<BR><FONT SIZE=2>> you're at so only using one
variable for each of the </FONT>
<BR><FONT SIZE=2>> three parts:</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Get the fuseaction with (allowing
for backwards </FONT>
<BR><FONT SIZE=2>> compatibility with</FONT>
<BR><FONT SIZE=2>> non-fusewire apps)</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> <!--- set fusewire to
fuseaction if not set ---></FONT>
<BR><FONT SIZE=2>> <!--- (bear in mind that if
fusewire is set, this won't </FONT>
<BR><FONT SIZE=2>> be, and if</FONT>
<BR><FONT SIZE=2>> it ---></FONT>
<BR><FONT SIZE=2>> <!--- isn't, then fuseaction
will be ---></FONT>
<BR><FONT SIZE=2>> <cfparam
name="attributes.fusewire"</FONT>
<BR><FONT SIZE=2>> default="#attributes.fuseaction#"></FONT>
<BR><FONT SIZE=2>> <!--- if fusewire has more
than 1 element, then it must have a</FONT>
<BR><FONT SIZE=2>> number ---></FONT>
<BR><FONT SIZE=2>> <!--- and if it doesn't, add a
1 to the end ---></FONT>
<BR><FONT SIZE=2>> <cfif
ListLen(attributes.fusewire,".") gt 1></FONT>
<BR><FONT SIZE=2>>
<cfset variables.listnum =</FONT>
<BR><FONT SIZE=2>> ListLast(attributes.fusewire,".")></FONT>
<BR><FONT SIZE=2>>
<!--- check to see if not numeric, and
add 1 if not ---></FONT>
<BR><FONT SIZE=2>>
<cfif NOT
IsNumeric(variables.listnum)></FONT>
<BR><FONT SIZE=2>>
<cfset attributes.fusewire = </FONT>
<BR><FONT SIZE=2>> attributes.fusewire &</FONT>
<BR><FONT SIZE=2>> ".1"></FONT>
<BR><FONT SIZE=2>>
</cfif></FONT>
<BR><FONT SIZE=2>> <cfelse></FONT>
<BR><FONT SIZE=2>>
<cfset variables.listnum = 1></FONT>
<BR><FONT SIZE=2>> </cfif></FONT>
<BR><FONT SIZE=2>> attributes.fuseaction =</FONT>
<BR><FONT SIZE=2>>
ListGetAt(attributes.fusewire,variables.listnum,".")</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Home Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> fusewire:
BookStore.Cart.AddItem.1</FONT>
<BR><FONT SIZE=2>>
fuseaction:
Bookstore</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Bookstore Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> fusewire:
BookStore.Cart.AddItem.2</FONT>
<BR><FONT SIZE=2>>
fuseaction:
Cart</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Cart Fusebox</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> fusewire:
BookStore.Cart.AddItem.3</FONT>
<BR><FONT SIZE=2>>
fuseaction:
AddItem</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> This has the advantage of being
blind to the coder </FONT>
<BR><FONT SIZE=2>> because all they</FONT>
<BR><FONT SIZE=2>> have to</FONT>
<BR><FONT SIZE=2>> do is to put the fusewire in like
BookStore.Cart.AddItem and the</FONT>
<BR><FONT SIZE=2>> fusebox</FONT>
<BR><FONT SIZE=2>> will add the 1 at the end to
begin with, and get the first</FONT>
<BR><FONT SIZE=2>> fuseaction.</FONT>
<BR><FONT SIZE=2>> Every subsequent fusebox can then
increment this end </FONT>
<BR><FONT SIZE=2>> number to pass</FONT>
<BR><FONT SIZE=2>> the</FONT>
<BR><FONT SIZE=2>> fusewire on.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Just a couple of thoughts.
Any good?</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Paul</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> > -----Original
Message-----</FONT>
<BR><FONT SIZE=2>> > From: BOROVOY Noam [<A
HREF="mailto:[EMAIL PROTECTED]">mailto:[EMAIL PROTECTED]</A>]</FONT>
<BR><FONT SIZE=2>> > Sent: 24 July 2000
09:39</FONT>
<BR><FONT SIZE=2>> > To:
'[EMAIL PROTECTED]'</FONT>
<BR><FONT SIZE=2>> > Subject: RE: Nested Fuesbox
apps</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Yes, that's the whole
idea:</FONT>
<BR><FONT SIZE=2>> > Each fusebox will take it's
fuseaction by using</FONT>
<BR><FONT SIZE=2>> >
ListFirst(request.CallerFuseAction, ".")</FONT>
<BR><FONT SIZE=2>> > Then cut it off so the next
fusebox down can also do the same.</FONT>
<BR><FONT SIZE=2>> > to use the same example of a
three level nested fusebox:</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Fusebox1(Home Fusebox)</FONT>
<BR><FONT SIZE=2>> > In</FONT>
<BR><FONT SIZE=2>> >
request.CallerFuseAction = ""</FONT>
<BR><FONT SIZE=2>> >
attributes.Fuseaction = BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
Variables.Fuseaction = BookStore (this will be used in </FONT>
<BR><FONT SIZE=2>> > the CFSWITCH /</FONT>
<BR><FONT SIZE=2>> > CFCASE)</FONT>
<BR><FONT SIZE=2>> > Out:</FONT>
<BR><FONT SIZE=2>> >
request.CallerFuseAction = BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
attributes.Fuseaction = Cart.AddItem</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Fusebox2 (BookStore
fusebox)</FONT>
<BR><FONT SIZE=2>> > In</FONT>
<BR><FONT SIZE=2>> >
request.CallerFuseAction = BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
attributes.Fuseaction = Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
variables.Fuseaction = Cart</FONT>
<BR><FONT SIZE=2>> > Out:</FONT>
<BR><FONT SIZE=2>> >
request.CallerFuseAction = BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
attributes.Fuseaction = AddItem</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Fusebox3 (Cart
Fusebox)</FONT>
<BR><FONT SIZE=2>> > In</FONT>
<BR><FONT SIZE=2>> >
request.CallerFuseAction = BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> >
attributes.Fuseaction = AddItem</FONT>
<BR><FONT SIZE=2>> >
variables.Fuseaction = AddItem</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > In any display performed in
any of the fuseboxes they can </FONT>
<BR><FONT SIZE=2>> > keep the context</FONT>
<BR><FONT SIZE=2>> > so that the same parent
fusebox will receive the call </FONT>
<BR><FONT SIZE=2>> by using:</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > variables.ParentFuseaction =
Left( request.CallerFuseAction,</FONT>
<BR><FONT SIZE=2>> >
Len(request.CallerFuseAction) - Len(attributes.fuseaction) ).</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > and then:</FONT>
<BR><FONT SIZE=2>> > <A</FONT>
<BR><FONT SIZE=2>> >
href="#CGI.ScriptName#?fuseaction=#variables.ParentFuseaction#</FONT>
<BR><FONT SIZE=2>> > ChildAction"></FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Again using the above
example:</FONT>
<BR><FONT SIZE=2>> > If from the AddItem you want
to go to ViewItems:</FONT>
<BR><FONT SIZE=2>> > variables.ParentFuseaction =
"BookStore.Cart."</FONT>
<BR><FONT SIZE=2>> > <A </FONT>
<BR><FONT SIZE=2>> >
href="#CGI.ScriptName#?fuseaction=#variables.ParentFuseaction#</FONT>
<BR><FONT SIZE=2>> > ViewItems"></FONT>
<BR><FONT SIZE=2>> > which will become:</FONT>
<BR><FONT SIZE=2>> > <A
href="index.cfm?fuseaction=BookStore.Cart.ViewItems"></FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > Regards,</FONT>
<BR><FONT SIZE=2>> > Noam</FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > </FONT>
<BR><FONT SIZE=2>> > > ----------</FONT>
<BR><FONT SIZE=2>> > > From:
Hulsey, James Phillip[SMTP:[EMAIL PROTECTED]]</FONT>
<BR><FONT SIZE=2>> > > Reply To:
[EMAIL PROTECTED]</FONT>
<BR><FONT SIZE=2>> > > Sent:
Monday, 24 July 2000 1:26</FONT>
<BR><FONT SIZE=2>> > > To:
'[EMAIL PROTECTED]'</FONT>
<BR><FONT SIZE=2>> > > Subject:
RE: Nested Fuesbox apps</FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> > > Noam,</FONT>
<BR><FONT SIZE=2>> > > Again. Great
stuff.</FONT>
<BR><FONT SIZE=2>> > > So, given what you're
stating, we would actually have an </FONT>
<BR><FONT SIZE=2>> > n-tier fusebox</FONT>
<BR><FONT SIZE=2>> > > solution? We could keep
building request.CallerFuseAction </FONT>
<BR><FONT SIZE=2>> > by adding to it</FONT>
<BR><FONT SIZE=2>> > > as</FONT>
<BR><FONT SIZE=2>> > > it passes through each
sub-app....couldn't we?</FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> > > Sounds good to me! We
need to standardize on this stuff as </FONT>
<BR><FONT SIZE=2>> > this is a big</FONT>
<BR><FONT SIZE=2>> > > step toward portability
and reuse :) Plug and play fusebox!</FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> > > Phil</FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> > > -----Original
Message-----</FONT>
<BR><FONT SIZE=2>> > > From: BOROVOY
Noam</FONT>
<BR><FONT SIZE=2>> > > To:
'[EMAIL PROTECTED]'</FONT>
<BR><FONT SIZE=2>> > > Sent: 7/21/00 9:45
AM</FONT>
<BR><FONT SIZE=2>> > > Subject: RE: Nested
Fuesbox apps (also RE: Other security </FONT>
<BR><FONT SIZE=2>> > considerations a</FONT>
<BR><FONT SIZE=2>> > > nd fusebox
methodologies...)</FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> > > > How about refining
the method to allow any fusebox to </FONT>
<BR><FONT SIZE=2>> > nest any other</FONT>
<BR><FONT SIZE=2>> > > > fusebox</FONT>
<BR><FONT SIZE=2>> > > > and allow all
links to be built automatically:</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > If the variable
request.CallerFuseAction is defined then </FONT>
<BR><FONT SIZE=2>> > all links can</FONT>
<BR><FONT SIZE=2>> > > be</FONT>
<BR><FONT SIZE=2>> > > > built using:</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > fuseaction for
links: request.CallerFuseAction </FONT>
<BR><FONT SIZE=2>> >
&".ChildFuseAction"</FONT>
<BR><FONT SIZE=2>> > > > Which then will be
passed to the CGI.ScriptName which </FONT>
<BR><FONT SIZE=2>> > will be the top</FONT>
<BR><FONT SIZE=2>> > > > level</FONT>
<BR><FONT SIZE=2>> > > > Index.cfm</FONT>
<BR><FONT SIZE=2>> > > > Such as:
<A</FONT>
<BR><FONT SIZE=2>> > > ></FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> >
href="#CGI.ScriptName#?fuseaction=#request.CallerFuseAction#.C</FONT>
<BR><FONT SIZE=2>> > hildAction</FONT>
<BR><FONT SIZE=2>> > > "</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > So an example for
a three level nesting:</FONT>
<BR><FONT SIZE=2>> > > >
BookStore.Cart.AddItem</FONT>
<BR><FONT SIZE=2>> > > > The top level
index.cfm has an action store which </FONT>
<BR><FONT SIZE=2>> forwards to</FONT>
<BR><FONT SIZE=2>> the</FONT>
<BR><FONT SIZE=2>> > > store</FONT>
<BR><FONT SIZE=2>> > > > sub</FONT>
<BR><FONT SIZE=2>> > > > directory
index.cfm with the action:</FONT>
<BR><FONT SIZE=2>> > > > Cart.AddItem</FONT>
<BR><FONT SIZE=2>> > > > Which in turn
forward to Cart sub directory index.cfm </FONT>
<BR><FONT SIZE=2>> > with the action:</FONT>
<BR><FONT SIZE=2>> > > > AddItem
</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > This way the top
level index.cfm files each only have a </FONT>
<BR><FONT SIZE=2>> > single case</FONT>
<BR><FONT SIZE=2>> > > > statement for each
child fusebox and they append this </FONT>
<BR><FONT SIZE=2>> > fuseaction to</FONT>
<BR><FONT SIZE=2>> > > the</FONT>
<BR><FONT SIZE=2>> > > >
request.CallerFuseAction so that each included sub </FONT>
<BR><FONT SIZE=2>> > fusebox knows how</FONT>
<BR><FONT SIZE=2>> > > to</FONT>
<BR><FONT SIZE=2>> > > > build the links
properly without having to hard code them.</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > With this and
RFA's (return fuseactions) you could easily</FONT>
<BR><FONT SIZE=2>> reuse</FONT>
<BR><FONT SIZE=2>> > > modules at</FONT>
<BR><FONT SIZE=2>> > > > any level without
needing to know the internals </FONT>
<BR><FONT SIZE=2>> of what you</FONT>
<BR><FONT SIZE=2>> are</FONT>
<BR><FONT SIZE=2>> > > including.</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > > Let me know what
you think,</FONT>
<BR><FONT SIZE=2>> > > > Noam</FONT>
<BR><FONT SIZE=2>> > > > </FONT>
<BR><FONT SIZE=2>> > > </FONT>
<BR><FONT SIZE=2>> >
--------------------------------------------------------------</FONT>
<BR><FONT SIZE=2>> > ----------------</FONT>
<BR><FONT SIZE=2>> > To Unsubscribe visit </FONT>
<BR><FONT SIZE=2>> > <A
HREF="http://www.houseoffusion.com/index.cfm?sidebar=lists&body=list"
TARGET="_blank">http://www.houseoffusion.com/index.cfm?sidebar=lists&body=list</A></FONT>
<BR><FONT SIZE=2>> s/fusebox or send a message to
[EMAIL PROTECTED]</FONT>
<BR><FONT SIZE=2>> with</FONT>
<BR><FONT SIZE=2>> 'unsubscribe' in the body.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>>
--------------------------------------------------------------</FONT>
<BR><FONT SIZE=2>> ----------------</FONT>
<BR><FONT SIZE=2>> To Unsubscribe visit </FONT>
<BR><FONT SIZE=2>> <A
HREF="http://www.houseoffusion.com/index.cfm?sidebar=lists&body=list"
TARGET="_blank">http://www.houseoffusion.com/index.cfm?sidebar=lists&body=list</A></FONT>
<BR><FONT SIZE=2>s/fusebox or send a message to [EMAIL PROTECTED] with
'unsubscribe' in the body.</FONT>
</P>
</BODY>
</HTML>
------------------------------------------------------------------------------
To Unsubscribe visit
http://www.houseoffusion.com/index.cfm?sidebarRsts&bodyRsts/fusebox or send a message
to [EMAIL PROTECTED] with 'unsubscribe' in the body.