Jira: Dynamic disclaimer form for the customer
Asked by Jamesson:

Let's say that I run a service through Jira where I match heroes with an adventure. I've got heroes of all varieties, and I've got adventures in spades.

A hero that wants to begin an adventure navigates to my Jira instance. They're able to create an issue that indicates the type of adventure that they'd like to have, so this hero does so. However, me as a responsible adventure-mapping service proprieter (and one that wants them to have a positive experience and thus come back for another adventure once the current one is over) wants to make sure that they understand all the risks associated with the hero's chosen adventure. I mean, you know those heroes: always headstrong and wanting to sail across the sea for the hidden treasure of King Flabbanabba, but they don't realize that there's a strong possibility that they have no sea legs and the trip there would be the worst part.

I also understand that there are several risks that could be associated with multiple adventures (lots of bad guys of henchpersons \[henchpeople?\], both mages and shamans can affect the weather, etc.); conversely, not all risks are associated with all adventures (you *probably* don't have to worry about a kraken *also* being a necromancer, but I suppose you never know).

So the prospective hero creates the issue and it flows through the workflow to the status "Adventure Requested". Unless I'm mistaken, I seriously doubt that Jira has the funcionality to extract the associated dangers automatically, so this bit requires the attention of one of my own henchpersons. Fine, that's no big deal. Once a henchperson gets their hands on it, they split the adventure request into an appropriate number of Epics, each one covering a different aspect of the adventure request, and each Epic potentially having different and not-necessarily-overlapping associated risks. Here's what I'm looking for from Jira:

1) For each Epic, my henchpersons would like to be able to select from a list pre-written disclaimers for each type of risk that a hero could face with that Epic. (If this just ends up being one long list where the henchperson just deletes the unwanted text, that's not the end of the world...ooh! New adventure idea!)

2) Once my henchpersons have selected all applicable risks for a given Epic, they transition it to a status that only the hero can transition out of, either accepting or rejecting the risks (I know how to do this bit already).

3) At some point in this process, the hero needs to see the pre-selected risks for each Epic, so I need a place where they'll all be gathered in one spot; is there some way to dynamically generate a block of text for the hero to read that would contain all of and only the pre-selected risks?

4) Once the hero is satisfied with the chosen adventure as broken down and codified into Epics by my henchpersons, and they've read the generated text of pre-selected risks, they can accept the Epics and transition the Epics to the "Open Adventure" status. But wait! How do I, as the proprieter, know that they've actually read the disclaimers? I don't want to get sued because some numb-skull didn't read the bit about electrocution. Is there a way to have a checkbox (or equivalent) that says "I've read and agree to all of the aforementioned risks"?

We also have access to Confluence, so if some of it needs to be handled there, that is an option.


Answers:
author: Jamesson
body: Okay, I think I figured out all of the aspects of what I'm looking for:

When the hero creates an issue, it goes into the "Awaiting Henchperson"  
status. The availble henchperson is notified by email to inspect the request; they then split the request into the different aspects of the adventure, and each aspect gets its own Epic. I created a multi-select checkbox field called "Potential Dangers" that contains enumerates all of the potential dangers that could be associated with any of the given adventures (Issue #1). The henchperson selects all of the applicable dangers and transitions the Epic(s) to the "Awaiting Adventurer" status. **While in this status**, the issue property "jira.issue.editable" is set to "false" (Issue #3). If the adventurer (and only the adventurer; I've given them the "Transition Issues" permission for the project, but the only transition they can make is to accept the adventure; Issue #2) clicks the "Accept Adventure" transition button, a screen pops up; this screen only has the "Potential Dangers" field on it, and because it's a transition, the button to click to continue says "Acknowledge Disclaimer" (Issue #4).

The one thing I'm working on now is making sure that the "Disclaimer" field is uneditable both while it's in this status and in the following transition.


author: Tom Lister
body: Hi [@Jamesson](/t5/user/viewprofilepage/user-id/1710730)

wow - full marks for longest question I've ever read. An adventure in itself.

I've never actually read a disclaimer or T\&C's and think the reading the manual is akin to cheating. So maybe your nightmare customer.

How about a workflow action with transition screen they must go through with a clear message to read the Confluence link before agreeing. They'll still ignore it but at least you have a record of their action for the years of legal wrangling over whether you told them fire was hot.

Regards

Tom

comments: author: Jamesson
body: [@Tom Lister](/t5/user/viewprofilepage/user-id/2065062)

Unfortunately, we're in a laboratory environment, and some of the processes involved are inherently destructive. The customer needs to be aware of whatever hazards the part will and may be subject to.

Your suggestion would probably work, but it would be a last resort; I want the information to be on the same screen as the button that says "GO", or whatever.

This is not like a T\&C sort of document; I'm talking 6-10 sentences at the most.


author: Tom Lister
body: You could look into the message text fields from the Jira toolkit.

or perhaps a single option check box field with the text in the description.


Tags: approver

custom-field

customer

dynamic

jira-software

jira-software-server

server

transition

workflow