aboutsummaryrefslogtreecommitdiff
path: root/models
diff options
context:
space:
mode:
Diffstat (limited to 'models')
-rw-r--r--models/issue.go2
-rw-r--r--models/login.go4
-rw-r--r--models/repo.go39
-rw-r--r--models/user.go29
4 files changed, 47 insertions, 27 deletions
diff --git a/models/issue.go b/models/issue.go
index 18057985..7db728ec 100644
--- a/models/issue.go
+++ b/models/issue.go
@@ -771,7 +771,7 @@ type Comment struct {
IssueId int64
CommitId int64
Line int64
- Content string
+ Content string `xorm:"TEXT"`
Created time.Time `xorm:"CREATED"`
}
diff --git a/models/login.go b/models/login.go
index 3efef2f7..984a9f8c 100644
--- a/models/login.go
+++ b/models/login.go
@@ -150,8 +150,8 @@ func DelLoginSource(source *LoginSource) error {
return err
}
-// login a user
-func LoginUser(uname, passwd string) (*User, error) {
+// UserSignIn validates user name and password.
+func UserSignIn(uname, passwd string) (*User, error) {
var u *User
if strings.Contains(uname, "@") {
u = &User{Email: uname}
diff --git a/models/repo.go b/models/repo.go
index 90e5e36b..869059fa 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -12,6 +12,7 @@ import (
"os/exec"
"path"
"path/filepath"
+ "sort"
"strings"
"time"
"unicode/utf8"
@@ -30,9 +31,9 @@ import (
var (
ErrRepoAlreadyExist = errors.New("Repository already exist")
ErrRepoNotExist = errors.New("Repository does not exist")
- ErrRepoFileNotExist = errors.New("Target Repo file does not exist")
+ ErrRepoFileNotExist = errors.New("Repository file does not exist")
ErrRepoNameIllegal = errors.New("Repository name contains illegal characters")
- ErrRepoFileNotLoaded = errors.New("repo file not loaded")
+ ErrRepoFileNotLoaded = errors.New("Repository file not loaded")
ErrMirrorNotExist = errors.New("Mirror does not exist")
)
@@ -45,7 +46,7 @@ func getAssetList(prefix string) []string {
assets := make([]string, 0, 15)
for _, name := range bin.AssetNames() {
if strings.HasPrefix(name, prefix) {
- assets = append(assets, name)
+ assets = append(assets, strings.TrimPrefix(name, prefix+"/"))
}
}
return assets
@@ -75,6 +76,8 @@ func LoadRepoConfig() {
LanguageIgns = typeFiles[0]
Licenses = typeFiles[1]
+ sort.Strings(LanguageIgns)
+ sort.Strings(Licenses)
}
func NewRepoContext() {
@@ -486,22 +489,40 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep
// .gitignore
if repoLang != "" {
filePath := "conf/gitignore/" + repoLang
- if com.IsFile(filePath) {
- if err := com.Copy(filePath,
- filepath.Join(tmpDir, fileName["gitign"])); err != nil {
+ targetPath := path.Join(tmpDir, fileName["gitign"])
+ data, err := bin.Asset(filePath)
+ if err == nil {
+ if err = ioutil.WriteFile(targetPath, data, os.ModePerm); err != nil {
return err
}
+ } else {
+ // Check custom files.
+ filePath = path.Join(setting.CustomPath, "conf/gitignore", repoLang)
+ if com.IsFile(filePath) {
+ if err := com.Copy(filePath, targetPath); err != nil {
+ return err
+ }
+ }
}
}
// LICENSE
if license != "" {
filePath := "conf/license/" + license
- if com.IsFile(filePath) {
- if err := com.Copy(filePath,
- filepath.Join(tmpDir, fileName["license"])); err != nil {
+ targetPath := path.Join(tmpDir, fileName["license"])
+ data, err := bin.Asset(filePath)
+ if err == nil {
+ if err = ioutil.WriteFile(targetPath, data, os.ModePerm); err != nil {
return err
}
+ } else {
+ // Check custom files.
+ filePath = path.Join(setting.CustomPath, "conf/license", license)
+ if com.IsFile(filePath) {
+ if err := com.Copy(filePath, targetPath); err != nil {
+ return err
+ }
+ }
}
}
diff --git a/models/user.go b/models/user.go
index dd70a35f..78ab4642 100644
--- a/models/user.go
+++ b/models/user.go
@@ -72,7 +72,7 @@ func (user *User) HomeLink() string {
return "/user/" + user.Name
}
-// AvatarLink returns the user gravatar link.
+// AvatarLink returns user gravatar link.
func (user *User) AvatarLink() string {
if setting.DisableGravatar {
return "/img/avatar_default.jpg"
@@ -121,7 +121,7 @@ func IsEmailUsed(email string) (bool, error) {
return orm.Get(&User{Email: email})
}
-// return a user salt token
+// GetUserSalt returns a user salt token
func GetUserSalt() string {
return base.GetRandomString(10)
}
@@ -268,17 +268,17 @@ func ChangeUserName(user *User, newUserName string) (err error) {
}
// UpdateUser updates user's information.
-func UpdateUser(user *User) (err error) {
- user.LowerName = strings.ToLower(user.Name)
+func UpdateUser(u *User) (err error) {
+ u.LowerName = strings.ToLower(u.Name)
- if len(user.Location) > 255 {
- user.Location = user.Location[:255]
+ if len(u.Location) > 255 {
+ u.Location = u.Location[:255]
}
- if len(user.Website) > 255 {
- user.Website = user.Website[:255]
+ if len(u.Website) > 255 {
+ u.Website = u.Website[:255]
}
- _, err = orm.Id(user.Id).AllCols().Update(user)
+ _, err = orm.Id(u.Id).AllCols().Update(u)
return err
}
@@ -356,17 +356,16 @@ func GetUserByKeyId(keyId int64) (*User, error) {
return user, nil
}
-// GetUserById returns the user object by given id if exists.
+// GetUserById returns the user object by given ID if exists.
func GetUserById(id int64) (*User, error) {
- user := new(User)
- has, err := orm.Id(id).Get(user)
+ u := new(User)
+ has, err := orm.Id(id).Get(u)
if err != nil {
return nil, err
- }
- if !has {
+ } else if !has {
return nil, ErrUserNotExist
}
- return user, nil
+ return u, nil
}
// GetUserByName returns the user object by given name if exists.