> i think that what people are REALLY telling you is that they 
> cannot explain 
> how $screen_placeholder is used.  It is NOTt stated in the Turbine 
> documentation. there is a reference to the variable, but it 
> is not given 
> sufficient discussion for adequate understanding.

I'm not sure I agree.  I just spent about half an hour browsing the docs at
the URL originally given
(http://jakarta.apache.org/turbine/turbine-2/fsd.html), and I think I now
have a fair understanding of how $screen_placeholder is used.  I read the
specification at the above URL for an overview of how Turbine works, then
poked around at a few links that were interesting but unrelated to
$screen_placeholder, and then found the page at
http://jakarta.apache.org/turbine/turbine-2/howto/velocity-site-howto.html,
discussing Velocity and screens.  According to the how-to, the
$screen_placeholder variable is what you, the layout designer, put into the
.vm (Velocity Macro) file defining your layout.  The $screen_placeholder
variable is used to indicate where in your layout you want the body content
of your page to appear, as distinct from the navigation portion(s) of the
complete page.

At this point I was still a bit fuzzy on how to create the connection
between the .vm file for the main body content of a particular page and the
.vm file for the desired layout.  Here I would agree that the documentation
could use a bit of clarification.  From reading the how-to, though, I
concluded that if you defined a layout as

.../templates/layouts/Default.vm

and then had three screens defined as

.../templates/screens/A.vm
.../templates/screens/B.vm
.../templates/screens/C.vm

and then asked http://myserver.com/Turbine/templates/A.vm, you would get
back the Default.vm layout, with the Velocity macro expansion of A.vm
inserted into Default.vm at the point where the $screen_placeholder appears.

Like I said, though, I'm a bit fuzzy on how exactly to link the layout and
the screen, though I'm pretty sure it works off of common patterns in the
path for each .vm file.  I notice that in the Jetspeed distribution, the
$screen_placeholder is used in only 2 places, under
$JETSPEED_HOME/webapp/WEB-INF/templates/vm, in layouts/html/default.vm and
navigations/wml/login.vm.  If I modify layouts/html/default.vm, it changes
the layout for all my pages, and the main body content does appear at the
spot where default.vm says $screen_placeholder.  The order of directory
names seems to not quite match between the Turbine docs and the Jetspeed
implementation, but from a quick glance at the Turbine docs I'd guess that
must be a configurable setting.

I got that much from reading the Turbine docs and running a couple find
commands on the Jetspeed distribution.  I confess I don't quite understand
what the mystery about $screen_placeholder is.  Am I missing something, or
does your question perhaps have to do more with layouts vs. screens rather
than with $screen_placeholder per se?  Just guessing, since that was the
part I felt shakiest about.

Mark

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to