Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,363,134
Community Members
 
Community Events
168
Community Groups

Set checkbox options based on a select list

I have written many behaviours to do what I've asked above, however, I haven't tried to do it with checkboxes, I've only done this to set the options for a select list.

What I have is a single select list field (Field A). Depending on the option selected in Field A, I need a checkbox field (Field B) to populate with a subset of the total options in the checkbox field.

My code is below, can someone PLEASE help with this. I'm not sure if there's a different convention for working with checkboxes/multi-selects.

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.user.util.UserUtil

def customFieldManager = ComponentAccessor.getCustomFieldManager()
def optionsManager = ComponentAccessor.getOptionsManager()

def cf1 = getFieldByName("Select List")
def cf2 = getFieldByName("CheckBox")

def cf1Val = cf1.getValue().toString()

cf2.setHidden(true)

def customField = customFieldManager.getCustomFieldObject(cf2.getFieldId())
def config = customField.getRelevantConfig(getIssueContext())
def options = optionsManager.getOptions(config)

if(cf1 == "Option 1"){
cf2.setHidden(false)
cf2.setRequired(true)
def optionsMap = options.findAll {
it.value in ["Option 1", "Option 2", "Option 3"] 
}.collectEntries {
[
(it.optionId.toString()) : it.value
]
}

cf2.setFieldOptions(optionsMap)
}

 Thank you in advance!

Nick

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events