Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Harry Gordon 15 posts 92 karma points c-trib
    Mar 21, 2022 @ 17:09
    Harry Gordon
    0

    Can I use the xPath union operator when setting up a Multinode Treepicker?

    Hi all, I'm trying to set-up a picker (Multinode Treepicker) and limit selections to two locations. I've worked out the two queries using the | operator (which is apparently a feature of xPath), for example:

    query1 | query2
    

    The result though is an error when loading the node: "An error occurred / Namespace Manager or XsltContext needed. This query has a prefix, variable, or user-defined function."

    Am I doing something wrong or is this unsupported?

    I'm also happy for other suggestions about how to achieve this. My main requirement is that users can choose nodes of type X from a set of specific parents (type Y) but not all those parents 😵... I can provide a more specific example if that would be helpful!

  • Lucas Michaelsen 32 posts 233 karma points
    Mar 21, 2022 @ 21:09
    Lucas Michaelsen
    1

    Hello Harry,

    I have done something simular to what yo are trying to do.

    $current/ancestor-or-self::*[name()='pFrontpageCampaign' or name()='pFrontpageLocal' or name()='pFrontpageDistric' or name()='pFrontpageMain']//fFAQFolder
    

    or

    [//folderX or //folderY]/child::*
    
  • Harry Gordon 15 posts 92 karma points c-trib
    Mar 22, 2022 @ 07:06
    Harry Gordon
    0

    Thanks Lucas, this was really helpful, my expression does now at least seem to be valid:

    $current/ancestor::*[name() = 'root' or name() = 'project']/sharedResources
    

    Unfortunately the Multinode Treepicker only offers the root resources and not the project resources. I wondered if this was an ordering issue in the or (like in Javascript, offering the first value if it's not empty) but order isn't the issue. If I remove the root clause I am offered the project content, so at least both clauses work.

    It may be worth noting that I'm on Umbraco v9.

    I will keep investigating.

  • Harry Gordon 15 posts 92 karma points c-trib
    Mar 22, 2022 @ 08:15
    Harry Gordon
    0

    I asked about this on Discord and Sebastian said all pickers only support a single root node (to his knowledge) so this is probably not doable.

    Edit: opened a feature request/discussion at Sebasitian's suggestion: https://github.com/umbraco/Umbraco-CMS/discussions/12162

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies