@ -5,7 +5,6 @@
package base
package base
import (
import (
"bytes"
"container/list"
"container/list"
"encoding/json"
"encoding/json"
"errors"
"errors"
@ -107,7 +106,6 @@ var TemplateFuncs template.FuncMap = map[string]interface{}{
return a + b
return a + b
} ,
} ,
"ActionIcon" : ActionIcon ,
"ActionIcon" : ActionIcon ,
"ActionDesc" : ActionDesc ,
"DateFormat" : DateFormat ,
"DateFormat" : DateFormat ,
"List" : List ,
"List" : List ,
"Mail2Domain" : func ( mail string ) string {
"Mail2Domain" : func ( mail string ) string {
@ -162,19 +160,6 @@ func ActionIcon(opType int) string {
}
}
}
}
// FIXME: Legacy
const (
TPL_CREATE_REPO = ` <a href="%s/user/%s">%s</a> created repository <a href="%s">%s</a> `
TPL_COMMIT_REPO = ` <a href="%s/user/%s">%s</a> pushed to <a href="%s/src/%s">%s</a> at <a href="%s">%s</a>%s `
TPL_COMMIT_REPO_LI = ` <div><img src="%s?s=16" alt="user-avatar"/> <a href="%s/commit/%s" rel="nofollow">%s</a> %s</div> `
TPL_CREATE_ISSUE = ` < a href = "%s/user/%s" > % s < / a > opened issue < a href = "%s/issues/%s" > % s # % s < / a >
< div > < img src = "%s?s=16" alt = "user-avatar" / > % s < / div > `
TPL_TRANSFER_REPO = ` <a href="%s/user/%s">%s</a> transfered repository <code>%s</code> to <a href="%s">%s</a> `
TPL_PUSH_TAG = ` <a href="%s/user/%s">%s</a> pushed tag <a href="%s/src/%s" rel="nofollow">%s</a> at <a href="%s">%s</a> `
TPL_COMMENT_ISSUE = ` < a href = "%s/user/%s" > % s < / a > commented on issue < a href = "%s/issues/%s" > % s # % s < / a >
< div > < img src = "%s?s=16" alt = "user-avatar" / > % s < / div > `
)
type PushCommit struct {
type PushCommit struct {
Sha1 string
Sha1 string
Message string
Message string
@ -185,6 +170,7 @@ type PushCommit struct {
type PushCommits struct {
type PushCommits struct {
Len int
Len int
Commits [ ] * PushCommit
Commits [ ] * PushCommit
CompareUrl string
}
}
func ActionContent2Commits ( act Actioner ) * PushCommits {
func ActionContent2Commits ( act Actioner ) * PushCommits {
@ -195,52 +181,6 @@ func ActionContent2Commits(act Actioner) *PushCommits {
return push
return push
}
}
// FIXME: Legacy
// ActionDesc accepts int that represents action operation type
// and returns the description.
func ActionDesc ( act Actioner ) string {
actUserName := act . GetActUserName ( )
email := act . GetActEmail ( )
repoUserName := act . GetRepoUserName ( )
repoName := act . GetRepoName ( )
repoLink := repoUserName + "/" + repoName
branch := act . GetBranch ( )
content := act . GetContent ( )
switch act . GetOpType ( ) {
case 1 : // Create repository.
return fmt . Sprintf ( TPL_CREATE_REPO , setting . AppSubUrl , actUserName , actUserName , repoLink , repoName )
case 5 : // Commit repository.
var push * PushCommits
if err := json . Unmarshal ( [ ] byte ( content ) , & push ) ; err != nil {
return err . Error ( )
}
buf := bytes . NewBuffer ( [ ] byte ( "\n" ) )
for _ , commit := range push . Commits {
buf . WriteString ( fmt . Sprintf ( TPL_COMMIT_REPO_LI , AvatarLink ( commit . AuthorEmail ) , repoLink , commit . Sha1 , commit . Sha1 [ : 7 ] , commit . Message ) + "\n" )
}
if push . Len > 3 {
buf . WriteString ( fmt . Sprintf ( ` <div><a href=" {{ AppRootSubUrl }} /%s/%s/commits/%s" rel="nofollow">%d other commits >></a></div> ` , actUserName , repoName , branch , push . Len ) )
}
return fmt . Sprintf ( TPL_COMMIT_REPO , setting . AppSubUrl , actUserName , actUserName , repoLink , branch , branch , repoLink , repoLink ,
buf . String ( ) )
case 6 : // Create issue.
infos := strings . SplitN ( content , "|" , 2 )
return fmt . Sprintf ( TPL_CREATE_ISSUE , setting . AppSubUrl , actUserName , actUserName , repoLink , infos [ 0 ] , repoLink , infos [ 0 ] ,
AvatarLink ( email ) , infos [ 1 ] )
case 8 : // Transfer repository.
newRepoLink := content + "/" + repoName
return fmt . Sprintf ( TPL_TRANSFER_REPO , setting . AppSubUrl , actUserName , actUserName , repoLink , newRepoLink , newRepoLink )
case 9 : // Push tag.
return fmt . Sprintf ( TPL_PUSH_TAG , setting . AppSubUrl , actUserName , actUserName , repoLink , branch , branch , repoLink , repoLink )
case 10 : // Comment issue.
infos := strings . SplitN ( content , "|" , 2 )
return fmt . Sprintf ( TPL_COMMENT_ISSUE , setting . AppSubUrl , actUserName , actUserName , repoLink , infos [ 0 ] , repoLink , infos [ 0 ] ,
AvatarLink ( email ) , infos [ 1 ] )
default :
return "invalid type"
}
}
func DiffTypeToStr ( diffType int ) string {
func DiffTypeToStr ( diffType int ) string {
diffTypes := map [ int ] string {
diffTypes := map [ int ] string {
1 : "add" , 2 : "modify" , 3 : "del" ,
1 : "add" , 2 : "modify" , 3 : "del" ,