Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save thehandsomezebra/3da05ae586a4a5f0ab6e61dbb75a8527 to your computer and use it in GitHub Desktop.
Save thehandsomezebra/3da05ae586a4a5f0ab6e61dbb75a8527 to your computer and use it in GitHub Desktop.
Jira custom script field (groovy) that creates a table based on entries from three different multi-select fields
////////////////////////////////////////////////////////////////////////
//Author: Stephanie Frantz //
//Primary Email: [email protected] //
//Secondary email: [email protected] //
// //
//PURPOSE: This script is utilized by the DPS team to identify //
// change management action required for retrofits //
// //
//VERSION: 1.0, created 4/27/2020 //
//new. //
//see https://jira.cengage.com/browse/_________ for more information //
// //
// DIG-103088 //
// //
////////////////////////////////////////////////////////////////////////
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.ComponentManager
//Define the current user first -- we need this so we can use the getLinkCollection function.
// "issue" is already defined as the issue that this field is on... so we don't have to define it.
def currentUser = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def linkedIssues = ComponentAccessor.getIssueLinkManager().getLinkCollection(issue, currentUser).getAllIssues()
//and define the custom field manager so we can check out the custom fields!
def customFieldManager = ComponentAccessor.getCustomFieldManager()
//////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////// SETUP //////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////
//def ValuesAddition = customFieldManager.getCustomFieldValue("Title").toString()
def Additions = getCustomFieldValue("Type of Change: Addition")
def Removals = getCustomFieldValue("Type of Change: Removal")
def Updates = getCustomFieldValue("Type of Change: Update")
def returnvalue = ""
if (Additions.size() > 0 || Removals.size() > 0 || Updates.size() > 0){
returnvalue += "<style>table { border-collapse: collapse;} table, td, th { border: 1px solid black; }</style><table><tr><th>Type of Change</th><th>Content</th><th>Change Management</th></tr>"
for (String a : Additions) {
if (a == "Media - Video") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Media - YouTube") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Media - Audio") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Media - HTML") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Media - Games") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Media - PowerPoint") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Narrative/Non-Book Readings") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "Apps") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "General - External Link") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "General - Downloadable File") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (a == "General - Flashcards") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Visible</b></td></tr>")}
if (a == "General - RSS Feed") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (a == "Assessment - Simple/CNOW") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Simple/CLHW") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - ATP") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Branching") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Graph Builder") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Media Quiz") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Online Forms") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - SAA") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Testbanks") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (a == "Assessment - IQ") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - SAM") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Learning Labs") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - LTI") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Aplia*") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - DATO") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Pathbrite") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - YouSeeU/Bongo") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
if (a == "Assessment - Speech Video Library") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (a == "Assessment - CLA") {returnvalue += ("<tr><td>Additions</td><td>" + a + "</td><td><b>P2S – Hidden</b></td></tr>")}
}
for (String r : Removals) {
if (r == "Media - Video"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete – Removed</b></td></tr>")}
if (r == "Media - YouTube"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete – Removed</b></td></tr>")}
if (r == "Media - Audio"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Media - HTML"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Media - Games"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Media - PowerPoint"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Narrative/Non-Book Readings"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Apps"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (r == "General - External Link"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "General - Downloadable File"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (r == "General - Flashcards"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "General - RSS Feed"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (r == "Assessment - Simple/CNOW"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Simple/CLHW"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - ATP"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Branching"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Graph Builder"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Media Quiz"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Online Forms"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - SAA"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Testbanks"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (r == "Assessment - IQ"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - SAM"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Learning Labs"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - LTI"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Aplia*"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - DATO"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Pathbrite"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - YouSeeU/Bongo"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
if (r == "Assessment - Speech Video Library"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (r == "Assessment - CLA"){returnvalue += ("<tr><td>Removals</td><td>" + r + "</td><td><b>P2S Delete - Removed</b></td></tr>")}
}
for (String u : Updates) {
if (u == "Media - Video"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Media - YouTube"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>P2S – Visible**</b></td></tr>")}
if (u == "Media - Audio"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Media - HTML"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Media - Games"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Media - PowerPoint"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Narrative/Non-Book Readings"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>P2S - Change Appears Automatically</b></td></tr>")}
if (u == "Apps"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>N/A</b></td></tr>")}
if (u == "General - External Link"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>P2S – Visible**</b></td></tr>")}
if (u == "General - Downloadable File"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (u == "General - Flashcards"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>P2S – Change Appears Automatically</b></td></tr>")}
if (u == "General - RSS Feed"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>Does not P2S; Rebuild Required</b></td></tr>")}
if (u == "Assessment - Simple/CNOW"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Simple/CLHW"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - ATP"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Branching"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Graph Builder"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Media Quiz"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Online Forms"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - SAA"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Testbanks"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - IQ"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - SAM"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Learning Labs"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - LTI"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Aplia*"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - DATO"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Pathbrite"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - YouSeeU/Bongo"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - Speech Video Library"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>No P2S – Change Appears Automatically</b></td></tr>")}
if (u == "Assessment - CLA"){returnvalue += ("<tr><td>Updates</td><td>" + u + "</td><td><b>P2S – Assuming No Student Takes on Activity</b></td></tr>")}
}
returnvalue += "</table>"
}
else {
returnvalue = null
}
//Additions.each{ }
return returnvalue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment