mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-03 03:55:58 +01:00
Add "View the diff" link to the edit wiki page activity.
This commit is contained in:
@@ -80,10 +80,10 @@ trait WikiControllerBase extends ControllerBase {
|
|||||||
val loginAccount = context.loginAccount.get
|
val loginAccount = context.loginAccount.get
|
||||||
|
|
||||||
saveWikiPage(repository.owner, repository.name, form.currentPageName, form.pageName,
|
saveWikiPage(repository.owner, repository.name, form.currentPageName, form.pageName,
|
||||||
form.content, loginAccount, form.message.getOrElse(""))
|
form.content, loginAccount, form.message.getOrElse("")).map { commitId =>
|
||||||
|
updateLastActivityDate(repository.owner, repository.name)
|
||||||
updateLastActivityDate(repository.owner, repository.name)
|
recordEditWikiPageActivity(repository.owner, repository.name, loginAccount.userName, form.pageName, commitId)
|
||||||
recordEditWikiPageActivity(repository.owner, repository.name, loginAccount.userName, form.pageName)
|
}
|
||||||
|
|
||||||
redirect(s"/${repository.owner}/${repository.name}/wiki/${StringUtil.urlEncode(form.pageName)}")
|
redirect(s"/${repository.owner}/${repository.name}/wiki/${StringUtil.urlEncode(form.pageName)}")
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -87,11 +87,11 @@ trait ActivityService {
|
|||||||
Some(pageName),
|
Some(pageName),
|
||||||
currentDate)
|
currentDate)
|
||||||
|
|
||||||
def recordEditWikiPageActivity(userName: String, repositoryName: String, activityUserName: String, pageName: String) =
|
def recordEditWikiPageActivity(userName: String, repositoryName: String, activityUserName: String, pageName: String, commitId: String) =
|
||||||
Activities.autoInc insert(userName, repositoryName, activityUserName,
|
Activities.autoInc insert(userName, repositoryName, activityUserName,
|
||||||
"edit_wiki",
|
"edit_wiki",
|
||||||
s"[user:${activityUserName}] edited the [repo:${userName}/${repositoryName}] wiki",
|
s"[user:${activityUserName}] edited the [repo:${userName}/${repositoryName}] wiki",
|
||||||
Some(pageName),
|
Some(pageName + ":" + commitId),
|
||||||
currentDate)
|
currentDate)
|
||||||
|
|
||||||
def recordPushActivity(userName: String, repositoryName: String, activityUserName: String,
|
def recordPushActivity(userName: String, repositoryName: String, activityUserName: String,
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ trait WikiService {
|
|||||||
* Save the wiki page.
|
* Save the wiki page.
|
||||||
*/
|
*/
|
||||||
def saveWikiPage(owner: String, repository: String, currentPageName: String, newPageName: String,
|
def saveWikiPage(owner: String, repository: String, currentPageName: String, newPageName: String,
|
||||||
content: String, committer: model.Account, message: String): Unit = {
|
content: String, committer: model.Account, message: String): Option[String] = {
|
||||||
|
|
||||||
LockUtil.lock(s"${owner}/${repository}/wiki"){
|
LockUtil.lock(s"${owner}/${repository}/wiki"){
|
||||||
// clone working copy
|
// clone working copy
|
||||||
@@ -122,8 +122,11 @@ trait WikiService {
|
|||||||
|
|
||||||
// commit and push
|
// commit and push
|
||||||
if(added || deleted){
|
if(added || deleted){
|
||||||
git.commit.setCommitter(committer.userName, committer.mailAddress).setMessage(message).call
|
val commit = git.commit.setCommitter(committer.userName, committer.mailAddress).setMessage(message).call
|
||||||
git.push.call
|
git.push.call
|
||||||
|
Some(commit.getName)
|
||||||
|
} else {
|
||||||
|
None
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,9 +38,17 @@
|
|||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
case "edit_wiki" => customActivity(activity, "activity-wiki.png"){
|
case "edit_wiki" => customActivity(activity, "activity-wiki.png"){
|
||||||
<div class="small activity-message">
|
activity.additionalInfo.get.split(":") match {
|
||||||
Edited <a href={s"${path}/${activity.userName}/${activity.repositoryName}/wiki/${activity.additionalInfo.get}"}>{activity.additionalInfo.get}</a>.
|
case Array(pageName, commitId) =>
|
||||||
</div>
|
<div class="small activity-message">
|
||||||
|
Edited <a href={s"${path}/${activity.userName}/${activity.repositoryName}/wiki/${pageName}"}>{pageName}</a>.
|
||||||
|
<a href={s"${path}/${activity.userName}/${activity.repositoryName}/wiki/${pageName}/_compare/${commitId.substring(0, 7)}^...${commitId.substring(0, 7)}"}>View the diff »</a>
|
||||||
|
</div>
|
||||||
|
case Array(pageName) =>
|
||||||
|
<div class="small activity-message">
|
||||||
|
Edited <a href={s"${path}/${activity.userName}/${activity.repositoryName}/wiki/${pageName}"}>{pageName}</a>.
|
||||||
|
</div>
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user