forked from tangled.org/core
this repo has no description

switch to RFC3339 everywhere

Changed files
+37 -29
appview
knotserver
+5 -4
appview/db/db.go
···
domain text not null unique,
did text not null,
secret text not null,
-
created integer default (strftime('%s', 'now')),
-
registered integer);
+
created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
+
registered text
+
);
create table if not exists public_keys (
id integer primary key autoincrement,
did text not null,
name text not null,
key text not null,
-
created integer default (strftime('%s', 'now')),
+
created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
unique(did, name, key)
);
create table if not exists repos (
···
did text not null,
name text not null,
knot text not null,
-
created integer default (strftime('%s', 'now')),
+
created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
unique(did, name, knot)
);
`)
+9 -7
appview/db/pubkeys.go
···
Did string `json:"did"`
Key string `json:"key"`
Name string `json:"name"`
-
Created time.Time
+
Created *time.Time
}
func (p PublicKey) MarshalJSON() ([]byte, error) {
type Alias PublicKey
return json.Marshal(&struct {
-
Created int64 `json:"created"`
+
Created string `json:"created"`
*Alias
}{
-
Created: p.Created.Unix(),
+
Created: p.Created.Format(time.RFC3339),
Alias: (*Alias)(&p),
})
}
···
for rows.Next() {
var publicKey PublicKey
-
var createdAt *int64
+
var createdAt string
if err := rows.Scan(&publicKey.Key, &publicKey.Name, &publicKey.Did, &createdAt); err != nil {
return nil, err
}
-
publicKey.Created = time.Unix(*createdAt, 0)
+
createdAtTime, _ := time.Parse(time.RFC3339, createdAt)
+
publicKey.Created = &createdAtTime
keys = append(keys, publicKey)
}
···
for rows.Next() {
var publicKey PublicKey
-
var createdAt *int64
+
var createdAt string
if err := rows.Scan(&publicKey.Did, &publicKey.Key, &publicKey.Name, &createdAt); err != nil {
return nil, err
}
-
publicKey.Created = time.Unix(*createdAt, 0)
+
createdAtTime, _ := time.Parse(time.RFC3339, createdAt)
+
publicKey.Created = &createdAtTime
keys = append(keys, publicKey)
}
+9 -10
appview/db/registration.go
···
}
for rows.Next() {
-
var createdAt *int64
-
var registeredAt *int64
+
var createdAt *string
+
var registeredAt *string
var registration Registration
err = rows.Scan(&registration.Domain, &registration.ByDid, &createdAt, &registeredAt)
if err != nil {
log.Println(err)
} else {
-
createdAtTime := time.Unix(*createdAt, 0)
-
+
createdAtTime, _ := time.Parse(time.RFC3339, *createdAt)
var registeredAtTime *time.Time
if registeredAt != nil {
-
x := time.Unix(*registeredAt, 0)
+
x, _ := time.Parse(time.RFC3339, *registeredAt)
registeredAtTime = &x
}
···
// returns registered status, did of owner, error
func (d *DB) RegistrationByDomain(domain string) (*Registration, error) {
-
var createdAt *int64
-
var registeredAt *int64
+
var createdAt *string
+
var registeredAt *string
var registration Registration
err := d.db.QueryRow(`
···
}
}
-
createdAtTime := time.Unix(*createdAt, 0)
+
createdAtTime, _ := time.Parse(time.RFC3339, *createdAt)
var registeredAtTime *time.Time
if registeredAt != nil {
-
x := time.Unix(*registeredAt, 0)
+
x, _ := time.Parse(time.RFC3339, *registeredAt)
registeredAtTime = &x
}
···
func (d *DB) Register(domain string) error {
_, err := d.db.Exec(`
update registrations
-
set registered = strftime('%s', 'now')
+
set registered = strftime('%Y-%m-%dT%H:%M:%SZ', 'now')
where domain = ?;
`, domain)
+10 -5
appview/db/repos.go
···
package db
+
import "time"
+
type Repo struct {
Did string
Name string
Knot string
-
Created *int64
+
Created *time.Time
}
func (d *DB) GetAllReposByDid(did string) ([]Repo, error) {
···
for rows.Next() {
var repo Repo
-
var createdAt *int64
+
var createdAt string
if err := rows.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil {
return nil, err
}
-
repo.Created = createdAt
+
createdAtTime, _ := time.Parse(time.RFC3339, createdAt)
+
repo.Created = &createdAtTime
repos = append(repos, repo)
}
···
var repo Repo
row := d.db.QueryRow(`select did, name, knot, created from repos where did = ? and name = ?`, did, name)
-
var createdAt *int64
+
+
var createdAt string
if err := row.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil {
return nil, err
}
-
repo.Created = createdAt
+
createdAtTime, _ := time.Parse(time.RFC3339, createdAt)
+
repo.Created = &createdAtTime
return &repo, nil
}
+1
appview/state/middleware.go
···
expiry, err := time.Parse(time.RFC3339, expiryStr)
if err != nil {
log.Println("invalid expiry time", err)
+
http.Redirect(w, r, "/login", http.StatusTemporaryRedirect)
return
}
pdsUrl := session.Values[appview.SessionPds].(string)
+2 -2
knotserver/db/init.go
···
id integer primary key autoincrement,
did text not null,
key text not null,
-
created timestamp default current_timestamp,
+
created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
unique(did, key),
foreign key (did) references known_dids(did) on delete cascade
);
···
did text not null,
name text not null,
description text not null,
-
created timestamp default current_timestamp,
+
created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),
unique(did, name)
);
+1 -1
knotserver/db/pubkeys.go
···
func (d *DB) AddPublicKey(pk PublicKey) error {
if pk.Created == "" {
-
pk.Created = time.Now().Format("2006-01-02 15:04:05.99999999 -0700 MST m=-0000.000000000")
+
pk.Created = time.Now().Format(time.RFC3339)
}
query := `insert or ignore into public_keys (did, key, created) values (?, ?, ?)`