Lock an issue - a better variant (Live Fields)
Table of Contents |
---|
Info | ||
---|---|---|
| ||
You will need the following JIRA plugins: Level: INTERMEDIATE |
...
- Configure the "Disable" Custom Field by choosing the cog icon and selecting the "Configure" option.
- Add two new buttons by clicking on the "Edit Buttons" link. Name those two buttons: "Lock" and "Unlock":
Step 2
Create a new Custom Field that keeps the username of the user that locked the issue editing.
...
On this step we have connected the buttons we've created to toggle the Is Locked Custom Field when pressing them.
...
Step 3
Now we have to make the SIL script that will do the disable operation during the edit.
- Go to Administration >> Plugins >> Kepler General Parameters
- Go to SIL Manager tab
- Create a new SIL script named "Lock.sil" by clicking on the Show Unused button.
- Select the folder you prefer and click New. Choose File and enter the "Lock.sil" name.
- Enter the following code in the ""Lock.sil":
...
Code Block |
---|
if (length(customfield_10304) != 0 && customfield_10304 != currentUser()) { lfDialogMessage("Somebody else is editing this issue.", "WARNING"); lfDisable("issueType"); lfDisable("priority"); lfDisable("affectedVersions"); lfDisable("status"); lfDisable("resolution"); lfDisable("summary"); lfDisable("fixVersions"); lfDisable("assignee"); lfDisable("reporter"); lfDisable("created"); lfDisable("updated"); lfDisable("labels"); lfDisable("editSubmit"); lfDisable("transitionSubmit"); lfExecuteJS("ScriptHide.js"); } lfWatch("customfield_10304", {"customfield_10304"}, "disable.sil"); lfWatch("edit-issue", {}, "disable.sil","click"); |
- Create a new SIL script named "disable.sil" and enter the following code:
...
- Add a new file named "ScriptShow.js" and enter the following code:
...
Code Block |
---|
AJS.$('#rowForcustomfield_10300').show(); |
- Add a new file named "ScriptHide.js" and enter the following code:
...
- Add the first SIL script as a hook on the project you desire.
- Go to Live Fields tab.
- Add a new configuration by clicking the "Add configuration" button.
- Name it whatever you like.
- Add the Lock.sil script you have just created on the SIL File box.
- Press Add button.
- Associate this configuration by pressing the Associate link.
- Select your desired project and click the Associate button.
...
This is all. You can now test it by opening two different sessions with two different users and try the lock and unlock buttons.