Hi All,
Can someone help me with custom validator (scriptrunner). I need to make the attachment system field mandatory when the value of radio. Here's the code that I am using:
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.IssueFieldConstants
import com.atlassian.jira.issue.MutableIssue;
import com.atlassian.jira.issue.comments.CommentManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.util.ImportUtils;
import com.opensymphony.util.TextUtils
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.attachment.TemporaryWebAttachment
import com.atlassian.jira.issue.attachment.TemporaryWebAttachmentManager
import webwork.action.ActionContext
import com.opensymphony.workflow.InvalidInputException
CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager();
CustomField customField_select_list_name = customFieldManager.getCustomFieldObject("customfield_10472");
def temporaryAttachmentUtil = ComponentAccessor.getComponent(TemporaryWebAttachmentManager)
def formToken = ActionContext.getRequest()?.getParameter(IssueFieldConstants.FORM_TOKEN)
//checking if Custom Field is "Yes" and Attachment is not Present
if (issue.getCustomFieldValue(customField_select_list_name).toString() == "Yes")
{
log.warn("sample")
if (formToken) {
def tempWebAttachments = temporaryAttachmentUtil.getTemporaryWebAttachmentsByFormToken(formToken)
log.warn(tempWebAttachments)
log.warn(formToken)
tempWebAttachments.each { TemporaryWebAttachment it ->
log.warn("Uploaded attachment name: ${it.filename}")
}
if(!tempWebAttachments)
{ throw new InvalidInputException(IssueFieldConstants.ATTACHMENT, "You must upload attachment") }
}
}
log.warn(issue.getCustomFieldValue(customField_select_list_name).toString())
Am I doing this right? Any feedback is appreciated. Thank you!