diff options
Diffstat (limited to 'models')
-rw-r--r-- | models/issue.go | 2 | ||||
-rw-r--r-- | models/login.go | 4 | ||||
-rw-r--r-- | models/repo.go | 39 | ||||
-rw-r--r-- | models/user.go | 29 |
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. |