Example scripts
To homepage
Bitbucket

Find unique Timezones for the Participants of a Pull Request
App in script

ScriptRunner For Bitbucket
by Adaptavist
Compatibility

Bitbucket (6.0 - 7.17)

ScriptRunner For Bitbucket (7.10.0)
Language |
groovy
import com.atlassian.bitbucket.pull.PullRequestService
import com.atlassian.bitbucket.repository.Repository
import com.onresolve.scriptrunner.parameters.annotation.RepositoryPicker
import com.atlassian.bitbucket.user.ApplicationUser
import com.atlassian.sal.api.component.ComponentLocator
import com.atlassian.bitbucket.timezone.UserTimeZoneSupplier
import com.onresolve.scriptrunner.parameters.annotation.ShortTextInput
@RepositoryPicker(label = 'Repository', description = 'Select a repository')
Repository repository
@ShortTextInput(label = "Pull Request id", description = "Enter the id of the pull request")
String pullRequestId
def pullRequestService = ComponentLocator.getComponent(PullRequestService)
def pullRequest = pullRequestService.getById(repository.id, pullRequestId.toLong())
def participants = pullRequest.reviewers*.user
participants << pullRequest.author.user
def userTimeZoneSupplier = ComponentLocator.getComponent(UserTimeZoneSupplier)
def timeZones = participants.collect { participant ->
userTimeZoneSupplier.getTimeZone(participant as ApplicationUser)
}
def actualTimeZones = timeZones.unique()
Having an issue with this script?
Report it here