Ability to provide client based content similar to language/locale?

I have…

I’m submitting a…

  • [ ] Regression (a behavior that stopped working in a new release)
  • [ ] Bug report
  • [ ] Performance issue
  • [x] Documentation issue or request

Current behavior

Our company has a need for a feature very similar to the way languages/locales are handled. We would like to be able to add, change or limit content based on other app variables.

Consider a diabetic user and a user with cancer. We would like the navigation content (and other sections) to be able change based on this logic. Our app would like to be able to send a header like X-userType: 'cancer' and receive the “cancer patient” version of the content…similar to how we can send languages and get the languages. It wouldn’t make sense to have a link for “schedule chemotherapy” for non-cancer patients. Nor would “reorder glucose monitor” apply to cancer patients…for example.

Another option would be able to create an app like “PatientApp:default” that serves as the primary app. And then have “PatientApp:cancer” that only has the differences. The differences override the default.

Is this currently possible with tags or metadata or some other feature?

Expected behavior

Minimal reproduction of the problem

Environment

App Name: member-portal-demo

  • [ ] Self hosted with docker
  • [ ] Self hosted with IIS
  • [ ] Self hosted with other version
  • [ X] Cloud version

Version: [VERSION]

Browser:

  • [ X ] Chrome (desktop)
  • [ ] Chrome (Android)
  • [ ] Chrome (iOS)
  • [ ] Firefox
  • [ ] Safari (desktop)
  • [ ] Safari (iOS)
  • [ ] IE
  • [ ] Edge

Others:

Right now it is not possible directly, but why can you not just tag content based on the target audience and then use a normal query?

How would you implement this with a traditional database?

We currently implement as part of our current CMS. We pull the content as I mentioned, but we’re open to doing things differently.

Is there built in tagging, or should we create a “tag” field.

Just create a tag field.

1 Like