Can you modularize online help?

This forum is for all Flare issues related to the HTML5, WebHelp, WebHelp Plus, and Adobe Air Targets
Post Reply
Vibeke B
Propeller Head
Posts: 75
Joined: Thu Mar 15, 2018 7:14 am
Location: Denmark

Can you modularize online help?

Post by Vibeke B »

Hi!

We have a software product that can be used by people in different sectors, let’s say some use cars, some use boats, and some use motor cycles. The features or add-ons the users have access to are controlled by licenses. Some of our topics will be the same (common) for all users, while others will only be relevant for specific users. The car users should not see the topics for boat users, etc. I understand that I can create different targets using conditions and I will probably have to do this for the pdfs.

But as far as I understand, our software cannot use three different outputs for online help, so having three different targets for online help is not really an option (we are using HTML5).

Is it possible to create one help output, e.g. with conditions, and then what the users can see and access is controlled by their licenses? Like one condition per license and then match them somehow at runtime? I understand that we also need to do some work on our software, but is there something that Flare can do that we can use in this process?

I hope I have explained it properly and look forward to your input! I have to understand what my options are so I can plan our help and structure.
NorthEast
Master Propellus Maximus
Posts: 6363
Joined: Mon Mar 05, 2007 8:33 am

Re: Can you modularize online help?

Post by NorthEast »

No, and Yes.

(1) If you want a simple solution, then No - there's nothing built in to in Flare that allows you to do this. You'd need to build 3 different outputs. I can't see why your software shouldn't be able to support 3 different outputs - the developers just need to check the user's licence, and open the help at a different URL depending on that licence. That seems by far the easiest solution, and is what I'd recommend.

(2) Yes, it's possible to have help content that changes dynamically (I do this in one project), but you have to do all the work yourself, it is complicated to set up, and the result is quite limited. For example, although you can hide/show particular content inside a topic, you can't hide topics from appearing in a menu, or hide content from appearing in search results. So I don't recommend this for your situation.

To get an idea of the complexity - I did it this way:
1. Mark content using conditions (or styles). This only works for marking content in a topic, rather than entire topics.
2. Using CSS, set these conditions so that they don't display by default (i.e. display - none). If you don't exclude the conditions in a target, the content you mark with conditions is visible in the output HTML as data attributes. This means you can use CSS to hide the content that's marked with the condition's data attributes. (Or you could use styles instead of conditions.)
3. When the app opens the help, it opens the URL for a landing page and passes two parameters - the help CSH identifier, and a 'variant' parameter which sets which version of the help to display.
4. A script in the landing page first saves the 'variant' parameter to the browser's local storage, and then redirects to the help URL using the CSH identifier.
5. The help page opens. The help includes some javascript (in the master page) to check the variant parameter stored in the browser's local storage. Based on that variant, it uses CSS to display the conditional content for that variant (i.e. display - block).
devjoe
Sr. Propeller Head
Posts: 337
Joined: Thu Jan 23, 2014 1:43 pm

Re: Can you modularize online help?

Post by devjoe »

Something somewhere from the application has to indicate which help to show, and once you do that it shouldn't be hard to get it calling 3 different URLs, and you can set up your outputs with the full power of condition tagging in Flare.
Post Reply