diff options
author | JoramWilander <jwawilander@gmail.com> | 2016-02-04 13:00:03 -0500 |
---|---|---|
committer | JoramWilander <jwawilander@gmail.com> | 2016-02-04 13:35:44 -0500 |
commit | e45282deaa1d78d7ff3a125e9fd11e3fdc120b07 (patch) | |
tree | c116beae6abed1b703c481dfd63df36d689a8af5 /model | |
parent | 7e8389cd0538fb6aff3931fb23714158d3f24449 (diff) | |
download | chat-e45282deaa1d78d7ff3a125e9fd11e3fdc120b07.tar.gz chat-e45282deaa1d78d7ff3a125e9fd11e3fdc120b07.tar.bz2 chat-e45282deaa1d78d7ff3a125e9fd11e3fdc120b07.zip |
Move license storage to database
Diffstat (limited to 'model')
-rw-r--r-- | model/license.go | 26 | ||||
-rw-r--r-- | model/system.go | 1 |
2 files changed, 27 insertions, 0 deletions
diff --git a/model/license.go b/model/license.go index a271b46b7..ea66fef0d 100644 --- a/model/license.go +++ b/model/license.go @@ -8,6 +8,12 @@ import ( "io" ) +type LicenseRecord struct { + Id string `json:"id"` + CreateAt int64 `json:"create_at"` + Bytes string `json:"-"` +} + type License struct { Id string `json:"id"` IssuedAt int64 `json:"issued_at"` @@ -83,3 +89,23 @@ func LicenseFromJson(data io.Reader) *License { return nil } } + +func (lr *LicenseRecord) IsValid() *AppError { + if len(lr.Id) != 26 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.id.app_error", nil, "") + } + + if lr.CreateAt == 0 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.create_at.app_error", nil, "") + } + + if len(lr.Bytes) == 0 || len(lr.Bytes) > 10000 { + return NewLocAppError("LicenseRecord.IsValid", "model.license_record.is_valid.create_at.app_error", nil, "") + } + + return nil +} + +func (lr *LicenseRecord) PreSave() { + lr.CreateAt = GetMillis() +} diff --git a/model/system.go b/model/system.go index 70db529d5..b387749f6 100644 --- a/model/system.go +++ b/model/system.go @@ -12,6 +12,7 @@ const ( SYSTEM_DIAGNOSTIC_ID = "DiagnosticId" SYSTEM_RAN_UNIT_TESTS = "RanUnitTests" SYSTEM_LAST_SECURITY_TIME = "LastSecurityTime" + SYSTEM_ACTIVE_LICENSE_ID = "ActiveLicenseId" ) type System struct { |