mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-07 05:55:51 +01:00
Fix TODO: Close issue and send webhook from online editing
This commit is contained in:
@@ -16,15 +16,18 @@ import java.util.zip.{ZipEntry, ZipOutputStream}
|
|||||||
import jp.sf.amateras.scalatra.forms._
|
import jp.sf.amateras.scalatra.forms._
|
||||||
import org.eclipse.jgit.dircache.DirCache
|
import org.eclipse.jgit.dircache.DirCache
|
||||||
import org.eclipse.jgit.revwalk.{RevCommit, RevWalk}
|
import org.eclipse.jgit.revwalk.{RevCommit, RevWalk}
|
||||||
|
import service.WebHookService.WebHookPayload
|
||||||
|
|
||||||
class RepositoryViewerController extends RepositoryViewerControllerBase
|
class RepositoryViewerController extends RepositoryViewerControllerBase
|
||||||
with RepositoryService with AccountService with ActivityService with ReferrerAuthenticator with CollaboratorsAuthenticator
|
with RepositoryService with AccountService with ActivityService with IssuesService with WebHookService
|
||||||
|
with ReferrerAuthenticator with CollaboratorsAuthenticator
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The repository viewer.
|
* The repository viewer.
|
||||||
*/
|
*/
|
||||||
trait RepositoryViewerControllerBase extends ControllerBase {
|
trait RepositoryViewerControllerBase extends ControllerBase {
|
||||||
self: RepositoryService with AccountService with ActivityService with ReferrerAuthenticator with CollaboratorsAuthenticator =>
|
self: RepositoryService with AccountService with ActivityService with IssuesService with WebHookService
|
||||||
|
with ReferrerAuthenticator with CollaboratorsAuthenticator =>
|
||||||
|
|
||||||
case class EditorForm(
|
case class EditorForm(
|
||||||
branch: String,
|
branch: String,
|
||||||
@@ -408,8 +411,19 @@ trait RepositoryViewerControllerBase extends ControllerBase {
|
|||||||
recordPushActivity(repository.owner, repository.name, loginAccount.userName, branch,
|
recordPushActivity(repository.owner, repository.name, loginAccount.userName, branch,
|
||||||
List(new CommitInfo(JGitUtil.getRevCommitFromId(git, commitId))))
|
List(new CommitInfo(JGitUtil.getRevCommitFromId(git, commitId))))
|
||||||
|
|
||||||
// TODO invoke hook
|
// close issue by commit message
|
||||||
|
closeIssuesFromMessage(message, loginAccount.userName, repository.owner, repository.name)
|
||||||
|
|
||||||
|
// call web hook
|
||||||
|
val commit = new JGitUtil.CommitInfo(JGitUtil.getRevCommitFromId(git, commitId))
|
||||||
|
getWebHookURLs(repository.owner, repository.name) match {
|
||||||
|
case webHookURLs if(webHookURLs.nonEmpty) =>
|
||||||
|
for(ownerAccount <- getAccountByUserName(repository.owner)){
|
||||||
|
callWebHook(repository.owner, repository.name, webHookURLs,
|
||||||
|
WebHookPayload(git, loginAccount, headName, repository, List(commit), ownerAccount))
|
||||||
|
}
|
||||||
|
case _ =>
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user