aboutsummaryrefslogtreecommitdiff
path: root/models/oauth2.go
diff options
context:
space:
mode:
author无闻 <joe2010xtmf@163.com>2014-04-07 15:47:26 -0400
committer无闻 <joe2010xtmf@163.com>2014-04-07 15:47:26 -0400
commit2577940c30f6a6d15390974ab36f8c3d1e00f9f4 (patch)
treec5f8fac19903327e78d5ac4f0fa2f8004a10974d /models/oauth2.go
parentef6b9784962d3152d3ec46833303bad72915af57 (diff)
parent22feddf804c7fbf3418cbbc8e7302da271da4e5a (diff)
Merge pull request #68 from gogits/dev
Dev
Diffstat (limited to 'models/oauth2.go')
-rw-r--r--models/oauth2.go33
1 files changed, 27 insertions, 6 deletions
diff --git a/models/oauth2.go b/models/oauth2.go
index 70dcd510..a17d4e30 100644
--- a/models/oauth2.go
+++ b/models/oauth2.go
@@ -1,6 +1,6 @@
package models
-import "time"
+import "fmt"
// OT: Oauth2 Type
const (
@@ -10,9 +10,30 @@ const (
)
type Oauth2 struct {
- Uid int64 `xorm:"pk"` // userId
- Type int `xorm:"pk unique(oauth)"` // twitter,github,google...
- Identity string `xorm:"pk unique(oauth)"` // id..
- Token string `xorm:"VARCHAR(200) not null"`
- RefreshTime time.Time `xorm:"created"`
+ Uid int64 `xorm:"pk"` // userId
+ Type int `xorm:"pk unique(oauth)"` // twitter,github,google...
+ Identity string `xorm:"pk unique(oauth)"` // id..
+ Token string `xorm:"VARCHAR(200) not null"`
+ //RefreshTime time.Time `xorm:"created"`
+}
+
+func AddOauth2(oa *Oauth2) (err error) {
+ if _, err = orm.Insert(oa); err != nil {
+ return err
+ }
+ return nil
+}
+
+func GetOauth2User(identity string) (u *User, err error) {
+ oa := &Oauth2{}
+ oa.Identity = identity
+ exists, err := orm.Get(oa)
+ if err != nil {
+ return
+ }
+ if !exists {
+ err = fmt.Errorf("not exists oauth2: %s", identity)
+ return
+ }
+ return GetUserById(oa.Uid)
}