| Author | Message | 
                                                                                                    
                                                        |    
                                                                                                                             
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Sunday 20 February 2005 5:55:42 am 
                                                                
                                                                 I'm trying to exclude one node (folder 142) or more nodes from the flat_left.tpl template without any success. I've read several post about how to accomplish this without any luck. This is the original code for the template. 
{let docs=treemenu( $module_result.path,
                    $module_result.node_id,
                    ezini( 'MenuContentSettings', 'LeftIdentifierList', 'menu.ini' ),
                    0, 5 )
                    depth=1}
        <ul>
        {section var=menu loop=$:docs last-value}
            {section show=and( $menu.last.level|eq( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
            {section-else}
            {section show=and( $menu.last.level|gt( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
                    {"</ul>
                </li>"|repeat(sub( $menu.last.level, $menu.level ))}
            {/section}
            {/section}
            {section show=and( $menu.last.level|lt( $menu.level ), $menu.number|gt( 1 ) )}
                <ul>
                    <li class="menu-level-{$menu.level}">
            {section-else}
                <li class="menu-level-{$menu.level}">
            {/section}
            <a {$menu.is_selected|choose( '', 'class="selected"' )} href={$menu.url_alias|ezurl}>{$menu.text|shorten( 25 )}</a>
            {set depth=$menu.level}
        {/section}
           </li>
        {section show=sub( $depth, 0 )|gt( 0 ) loop=sub( $depth, 0 )}
            </ul>
        </li>
        {/section}
        </ul>
{/let}
Suggestions to make this code work as mentioned above is highly appreciated.I'm using Exponential version 3.5
 | 
                                                
                                                                                                                                                        
                                                        | Arran Price
                                                                                                                             | Sunday 20 February 2005 1:17:07 pm 
                                                                 Shouldnt you be able to put a  
{section show=currentnode|ne('142')}
{/section}
where currentnode is whatever holds the node valuearound the entire contents of the loop ie:
 
   {section var=menu loop=$:docs last-value}
so put the section show the line after the loop statement and close the section statement one line above the close for the loop. Hope thats of some help Arran | 
                                                                                                    
                                                        |    
                                                                                                                             | Sunday 20 February 2005 3:36:29 pm 
                                                                 Thanks for the reply. I guess this is how you tried to explain the code should be: 
{let docs=treemenu( $module_result.path,
                    $module_result.node_id,
                    ezini( 'MenuContentSettings', 'LeftIdentifierList', 'menu.ini' ),
                    0, 5 )
                    depth=1}
        <ul>
        {section var=menu loop=$:docs last-value}
        {section show=currentnode|ne('142')}
            {section show=and( $menu.last.level|eq( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
            {section-else}
            {section show=and( $menu.last.level|gt( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
                    {"</ul>
                </li>"|repeat(sub( $menu.last.level, $menu.level ))}
            {/section}
            {/section}
            {section show=and( $menu.last.level|lt( $menu.level ), $menu.number|gt( 1 ) )}
                <ul>
                    <li class="menu-level-{$menu.level}">
            {section-else}
                <li class="menu-level-{$menu.level}">
            {/section}
            <a {$menu.is_selected|choose( '', 'class="selected"' )} href={$menu.url_alias|ezurl}>{$menu.text|shorten( 25 )}</a>
            {set depth=$menu.level}
        {/section}
        {/section}
           </li>
        {section show=sub( $depth, 0 )|gt( 0 ) loop=sub( $depth, 0 )}
            </ul>
        </li>
        {/section}
        </ul>
{/let}
This doesn't help, node 142 is still show in the left menu. | 
                                                                                                    
                                                        | Arran Price
                                                                                                                             | Sunday 20 February 2005 4:17:25 pm 
                                                                 
you need to replace "currentnode" with the correct variable.It might be something along the lines of
 $module_result.path[1].node_id (which I dont think will work).
 The way to go to figure out what the correct variable is, would to be use attribute show etc 
{$our_variable|attribute(show,1)}
throw your vars like last-value etc in there and you should see what you need. Sorry cant be of more help. Am just too busy at the moment. Arran | 
                                                                                                    
                                                        |    
                                                                                                                             | Friday 25 February 2005 4:51:04 am 
                                                                 
This is how I filtered away node id 142.I'm not sure if this is the recommended way of doing it, but it works.
 
{let docs=treemenu( $module_result.path,
                    $module_result.node_id,
                    ezini( 'MenuContentSettings', 'LeftIdentifierList', 'menu.ini' ),
                    0, 2 )
                    depth=1}
        <ul>
        {section var=menu loop=$:docs last-value}
        {section show=$menu.id|eq( '142' )|not }
            {section show=and( $menu.last.level|eq( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
            {section-else}
            {section show=and( $menu.last.level|gt( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
                    {"</ul>
                </li>"|repeat(sub( $menu.last.level, $menu.level ))}
            {/section}
            {/section}
            {section show=and( $menu.last.level|lt( $menu.level ), $menu.number|gt( 1 ) )}
                <ul>
                    <li class="menu-level-{$menu.level}">
            {section-else}
                <li class="menu-level-{$menu.level}">
            {/section}
            <a {$menu.is_selected|choose( '', 'class="selected"' )} href={$menu.url_alias|ezurl}>{$menu.text|shorten( 25 )}</a>
            {set depth=$menu.level}
        {/section}
           </li>
        {section show=sub( $depth, 0 )|gt( 0 ) loop=sub( $depth, 0 )}
            </ul>
        </li>
        {/section}
        {/section}
        </ul>
{/let} | 
                                                                                                    
                                                        |    
                                                                                                                             | Friday 25 February 2005 6:34:12 am 
                                                                 This code works the way I wanted it to. 
Note{/section} was placed in the wrong place in my previous code listing.
 
{let docs=treemenu( $module_result.path,
                    $module_result.node_id,
                    ezini( 'MenuContentSettings', 'LeftIdentifierList', 'menu.ini' ),
                    0, 5 )
                    depth=1}
        <ul>
        {section var=menu loop=$:docs last-value}
        {section show=$menu.id|eq( '142' )|not }
            {section show=and( $menu.last.level|eq( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
            {section-else}
            {section show=and( $menu.last.level|gt( $menu.level ), $menu.number|gt( 1 ) )}
                </li>
                    {"</ul>
                </li>"|repeat(sub( $menu.last.level, $menu.level ))}
            {/section}
            {/section}
            {section show=and( $menu.last.level|lt( $menu.level ), $menu.number|gt( 1 ) )}
                <ul>
                    <li class="menu-level-{$menu.level}">
            {section-else}
                <li class="menu-level-{$menu.level}">
            {/section}
            <a {$menu.is_selected|choose( '', 'class="selected"' )} href={$menu.url_alias|ezurl}>{$menu.text|shorten( 25 )}</a>
            {set depth=$menu.level}
        {/section}
        {/section}
           </li>
        {section show=sub( $depth, 0 )|gt( 0 ) loop=sub( $depth, 0 )}
            </ul>
        </li>
        {/section}
        </ul>
{/let} |