On 1/12/06, Wendy Smoak <[EMAIL PROTECTED]> wrote:
> On 1/12/06, Michael Jouravlev <[EMAIL PROTECTED]> wrote:
>
> > Oops, bad URL for live demo. Here is the proper one:
> > http://www.superinterface.com/jspcontrols/tabcontrol/index.jsp
>
> Nice. :) How would you you conditionally display each tab based on
> user role(s)?
Right now there is no security-specific tag or attribute. What you can
do now is either:
* surround each tab with Struts/JSTL conditional tags, or
* create a tag/servlet that spits out only the tags that are
appropriate for current component state (this would have to be my job,
actually).
For example, this is how the Tigris-style tabs can be defined
(copy/paste style):
=== cut here ===
<table class="tabs" border="0" cellspacing="0" cellpadding="0">
<tr>
<%-- First tab is active --%>
<c:if test='${empty currentTab || currentTab == "tab1"}'>
<table class="tigristabs" border="0" cellspacing="0">
<tr>
<th><jc:link event="tab1event" value="Tab1" /></th>
<td><jc:link event="tab2event" value="Tab2" /></td>
</tr>
</table>
</c:if>
<%-- Second tab is active --%>
<c:if test='${currentTab == "tab2"}'>
<table class="tigristabs" border="0" cellspacing="0">
<tr>
<td><jc:link event="tab1event">Tab1</jc:link></td>
<th><jc:link event="tab2event">Tab2</jc:link></th>
</tr>
</table>
</c:if>
</tr>
</table>
=== cut here ===
You can put whatever you want into JSTL condition. The tab component
that I have now is more of a template that you can adjust for your
content and design, than a parameterizable tag. If you interested, see
this short intro: http://www.jroller.com/page/javadujour/20060110
But nothing prevents me from putting this markup inside a Tab tag. I
think I will do that, and I will add "role" attribute as well, just
like you have in Struts Menu. Or do you want to have it in a different
way? I am all ears :-)
I am doing my releases step by step, hopefully it won't take long for
1.0 version ;-) Thanks for heads up!
Michael.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]