Hi.

Can't you bind the exclude parameter of the grid to a method that excludes
extra columns, if the user is not logged in?

- And i think that you may be looking for rowClass parameter of the grid,
not class.

I would suggest that you take a look at the documentation for the grid...
http://tapestry.apache.org/current/apidocs/org/apache/tapestry5/corelib/components/Grid.html

-- 
Chris


On Wed, Apr 16, 2014 at 3:52 PM, Chris Mylonas <ch...@opencsta.org> wrote:

> Hi Tapsters,
>
> I'm converting an old table with a t:Loop component into a t:Grid
> component.
>
>
> I used to have a table that hid the username/password columns and now for a
> non-admin user with the grid the columns show.
> You can see the code below.
>
> Would I have to define the <t:grid ..............> inside a
> <t:security.hasRole role="ADMIN"> block to get the desired effect of
> showing the extra columns for admin users?
> And have the <p:else> contain the grid excluding the username/password
> columns?
>
>
>
> The second problem is in my t:Loop component, the class was happily being
> displayed as the ${currentNetworkInformation.status}  where inuse would be
> css red and available would be css green.
> However with the t:Grid component, the class =
> ${currentNetworkInformation.status} is telling me it is null.
>
> I can't use cycle, because I'm not really doing a zebra effect.  It's a
> status based on the row value "effect"  *ta boom tish*
>
>
> Any help on my two things would be great.  It's been a month between
> tapestry development, the first 2 hours was spent re-installing my app
> server and mucking around with t:parameter deprecation - not the most
> useful 2 hours :P
>
>
> Apart from my little grid problems, maybe I will stick with it - paging is
> very very very handy on /19 subnets (thousands of ip addresses)!
> Thanks
> Chris
>
>
>
>
>
>                 <tr t:type="Loop" t:source="assignedAddresses"
> t:value="currentNetworkInformation"
> class="${currentNetworkInformation.status}">
>                     <td>${currentNetworkInformation.status}</td>
>             <td><a
> href="ssh://${currentNetworkInformation.ipaddress}">SSH</a></td>
>                     <td>${currentNetworkInformation.device}</td>
>                     <td>${currentNetworkInformation.location}</td>
> <t:security.hasRole role="ADMIN">
>                     <td><t:pagelink page="admin/UpdateAddress"
>
> context="currentNetworkInformation.id">${currentNetworkInformation.ipaddress}</t:pagelink></td>
>                     <p:else>
>                     <td>${currentNetworkInformation.ipaddress}</td>
>                     </p:else>
> </t:security.hasRole>
>
>
> <td>${subnetMaskEnumStringService.convertNetmask(currentNetworkInformation.mask)}</td>
>                     <td>${currentNetworkInformation.vlan}</td>
>                     <td>${currentNetworkInformation.vrf}</td>
>                     <td>${currentNetworkInformation.gateway}</td>
> <t:security.hasRole role="ADMIN">
>                     <td>${currentNetworkInformation.username}</td>
>                     <td>${currentNetworkInformation.password}</td>
> </t:security.hasRole>
>                 </tr>
>
>
>
> And I've moved to a grid.
>
> <t:grid source="assignedAddresses" row="currentNetworkInformation"
> add="login"
>
> exclude="id,_persistence_shouldRefreshFetchGroup,subnetId,addressType,OctetsInt1,OctetsInt2,OctetsInt3,OctetsInt4"
>
> reorder="status,login,device,location,ipaddress,mask,vlan,vrf,gateway,username,password"
> rowsPerPage="256" class="${currentNetworkInformation.status}">
>     <p:loginCell>
>         <a href="ssh://${currentNetworkInformation.ipaddress}">SSH</a>
>     </p:loginCell>
>     <p:ipAddressCell>
>         <t:security.hasRole role="ADMIN">
>             <t:pagelink page="admin/UpdateAddress"
>
> context="currentNetworkInformation.id">${currentNetworkInformation.ipaddress}</t:pagelink>
>         <p:else>
>             ${currentNetworkInformation.ipaddress}
>         </p:else>
>         </t:security.hasRole>
>     </p:ipAddressCell>
>     <p:usernameCell>
>         <t:security.hasRole role="ADMIN">
>             ${currentNetworkInformation.username}
>         </t:security.hasRole>
>     </p:usernameCell>
>     <p:passwordCell>
>         <t:security.hasRole role="ADMIN">
>             ${currentNetworkInformation.password}
>         </t:security.hasRole>
>     </p:passwordCell>
> </t:grid>
>

Reply via email to