Question

How to write regular expression for NOT to include view name start with '(' in xe:dominoViewListTreeNode

Generally we use expression to include view name like:

<xe:dominoViewListTreeNode filter='All.*' ...>

There is the code:

<xe:navigator
            id="navigator1"
            xp:key="facet_3"
            expandable="false"
        >
            <xe:this.treeNodes>
                <xe:repeatTreeNode
                    loaded="true"
                    indexVar="index"
                    var="crrView"
                    value="#{javascript:return database.getViews();}"
                >
                    <xe:this.children>
                        <xe:dominoViewListTreeNode
                            folders="false"
                            label="#{javascript:crrView.getName()}"
                            submitValue="#{javascript:crrView.getName()}"
                            enabled="true"
                            filter="^\w+.*"
                        >

                            <xe:this.selected><![CDATA[#{javascript:if(context.getSubmittedValue()===null){
crrView.getName().equals("Pending \\By Status");
}
else{
crrView.getName().equals(context.getSubmittedValue());
}}]]></xe:this.selected>
                        </xe:dominoViewListTreeNode>
                    </xe:this.children>
                </xe:repeatTreeNode>
            </xe:this.treeNodes>
            <xp:eventHandler
                event="onItemClick"
                submit="true"
                refreshMode="partial"
                refreshId="oneuilayout"
            >
                <xe:this.action>
                    <xp:executeScript
                        script="#    {javascript:viewScope.viewName =  context.getSubmittedValue();}"
                    >
                    </xp:executeScript>
                </xe:this.action>
            </xp:eventHandler>
        </xe:navigator>

Any idea!

-MAK

Was it helpful?

Solution

Use filter="[^(]+.*" for selecting all viewnames which don't start with "(" or filter="\w+.*" for viewnames which starts with a letter, digit or underscore.

Example for testing:

<xe:navigator id="navigator1">
    <xe:this.treeNodes>
        <xe:dominoViewListTreeNode var="viewName" folders="false"
            enabled="true" filter="[^(]+.*"
            href="#{javascript:viewName}" />
    </xe:this.treeNodes>
</xe:navigator>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top