Use session for rolling back

This commit is contained in:
Unknown
2014-04-04 18:55:17 -04:00
parent eb803ec5eb
commit e41ab839c7
4 changed files with 63 additions and 11 deletions

View File

@ -7,6 +7,8 @@ package models
import (
"strings"
"time"
"github.com/lunny/xorm"
)
// Access types.
@ -40,6 +42,15 @@ func UpdateAccess(access *Access) error {
return err
}
// UpdateAccess updates access information with session for rolling back.
func UpdateAccessWithSession(sess *xorm.Session, access *Access) error {
if _, err := sess.Id(access.Id).Update(access); err != nil {
sess.Rollback()
return err
}
return nil
}
// HasAccess returns true if someone can read or write to given repository.
func HasAccess(userName, repoName string, mode int) (bool, error) {
return orm.Get(&Access{