Hi,
I have two applications and the respective sites for those applications for now. In future these count of applications may grow.
Now, I got a requirement that I have to provide a common interface which user can use to navigate the respective site based on the application groups user belonging to.
Some users may have access to both sites and some users have access to a single site.
Can someone advise how and the best way to handle the situation.
Thanks in advance.
Discussion posts and replies are publicly visible
Assuming you simply need to hide/show components such as links on an interface, you can utilize a!isUserMemberOfGroup() to determine if the link should show based on group membership:
a!linkField( showWhen: a!isUserMemberOfGroup( username: loggedInUser(), group: cons!YOUR_ACCESS_GROUP_HERE, matchAllGroups: true ), links: {/* link here */} )
If that is not what you are looking for, please provide any additional details on your use case.
a!linkField( showWhen: a!isUserMemberOfGroup( username: loggedInUser(), group: cons!YOUR_ACCESS_GROUP_HERE, matchAllGroups: true ), links: {/* link here */})
We have different kind of links. Do I need to use any specific link types to navigate to Appian site?
Don't use a!linkField for anything (ever). Instead use a!richTextDisplayField(), and in its text item, use a!safeLink(). Your safeLink will need to (manually) call the URL of the Site in question. I don't currently know of any programmatic way to link to an alternate site rather than manually linking the site URL (though this can include assembling the URL using the site's stub and the current environment's URL).
Mike Schmitt said:Don't use a!linkField for anything (ever). Instead use a!richTextDisplayField(), and in its text item, use a!safeLink().
Despite my example containing a!linkField(), I agree with the a!richTextDisplayField() approach instead