···2121 domain text not null unique,2222 did text not null,2323 secret text not null,2424- created integer default (strftime('%s', 'now')),2525- registered integer);2424+ created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),2525+ registered text2626+ );2627 create table if not exists public_keys (2728 id integer primary key autoincrement,2829 did text not null,2930 name text not null,3031 key text not null,3131- created integer default (strftime('%s', 'now')),3232+ created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),3233 unique(did, name, key)3334 );3435 create table if not exists repos (···3736 did text not null,3837 name text not null,3938 knot text not null,4040- created integer default (strftime('%s', 'now')),3939+ created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),4140 unique(did, name, knot)4241 );4342 `)
+9-7
appview/db/pubkeys.go
···2121 Did string `json:"did"`2222 Key string `json:"key"`2323 Name string `json:"name"`2424- Created time.Time2424+ Created *time.Time2525}26262727func (p PublicKey) MarshalJSON() ([]byte, error) {2828 type Alias PublicKey2929 return json.Marshal(&struct {3030- Created int64 `json:"created"`3030+ Created string `json:"created"`3131 *Alias3232 }{3333- Created: p.Created.Unix(),3333+ Created: p.Created.Format(time.RFC3339),3434 Alias: (*Alias)(&p),3535 })3636}···46464747 for rows.Next() {4848 var publicKey PublicKey4949- var createdAt *int644949+ var createdAt string5050 if err := rows.Scan(&publicKey.Key, &publicKey.Name, &publicKey.Did, &createdAt); err != nil {5151 return nil, err5252 }5353- publicKey.Created = time.Unix(*createdAt, 0)5353+ createdAtTime, _ := time.Parse(time.RFC3339, createdAt)5454+ publicKey.Created = &createdAtTime5455 keys = append(keys, publicKey)5556 }5657···73727473 for rows.Next() {7574 var publicKey PublicKey7676- var createdAt *int647575+ var createdAt string7776 if err := rows.Scan(&publicKey.Did, &publicKey.Key, &publicKey.Name, &createdAt); err != nil {7877 return nil, err7978 }8080- publicKey.Created = time.Unix(*createdAt, 0)7979+ createdAtTime, _ := time.Parse(time.RFC3339, createdAt)8080+ publicKey.Created = &createdAtTime8181 keys = append(keys, publicKey)8282 }8383
+9-10
appview/db/registration.go
···4444 }45454646 for rows.Next() {4747- var createdAt *int644848- var registeredAt *int644747+ var createdAt *string4848+ var registeredAt *string4949 var registration Registration5050 err = rows.Scan(®istration.Domain, ®istration.ByDid, &createdAt, ®isteredAt)51515252 if err != nil {5353 log.Println(err)5454 } else {5555- createdAtTime := time.Unix(*createdAt, 0)5656-5555+ createdAtTime, _ := time.Parse(time.RFC3339, *createdAt)5756 var registeredAtTime *time.Time5857 if registeredAt != nil {5959- x := time.Unix(*registeredAt, 0)5858+ x, _ := time.Parse(time.RFC3339, *registeredAt)6059 registeredAtTime = &x6160 }6261···70717172// returns registered status, did of owner, error7273func (d *DB) RegistrationByDomain(domain string) (*Registration, error) {7373- var createdAt *int647474- var registeredAt *int647474+ var createdAt *string7575+ var registeredAt *string7576 var registration Registration76777778 err := d.db.QueryRow(`···8788 }8889 }89909090- createdAtTime := time.Unix(*createdAt, 0)9191+ createdAtTime, _ := time.Parse(time.RFC3339, *createdAt)9192 var registeredAtTime *time.Time9293 if registeredAt != nil {9393- x := time.Unix(*registeredAt, 0)9494+ x, _ := time.Parse(time.RFC3339, *registeredAt)9495 registeredAtTime = &x9596 }9697···155156func (d *DB) Register(domain string) error {156157 _, err := d.db.Exec(`157158 update registrations158158- set registered = strftime('%s', 'now')159159+ set registered = strftime('%Y-%m-%dT%H:%M:%SZ', 'now')159160 where domain = ?;160161 `, domain)161162
+10-5
appview/db/repos.go
···11package db2233+import "time"44+35type Repo struct {46 Did string57 Name string68 Knot string77- Created *int6499+ Created *time.Time810}9111012func (d *DB) GetAllReposByDid(did string) ([]Repo, error) {···20182119 for rows.Next() {2220 var repo Repo2323- var createdAt *int642121+ var createdAt string2422 if err := rows.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil {2523 return nil, err2624 }2727- repo.Created = createdAt2525+ createdAtTime, _ := time.Parse(time.RFC3339, createdAt)2626+ repo.Created = &createdAtTime2827 repos = append(repos, repo)2928 }3029···4037 var repo Repo41384239 row := d.db.QueryRow(`select did, name, knot, created from repos where did = ? and name = ?`, did, name)4343- var createdAt *int644040+4141+ var createdAt string4442 if err := row.Scan(&repo.Did, &repo.Name, &repo.Knot, &createdAt); err != nil {4543 return nil, err4644 }4747- repo.Created = createdAt4545+ createdAtTime, _ := time.Parse(time.RFC3339, createdAt)4646+ repo.Created = &createdAtTime48474948 return &repo, nil5049}
···2525 id integer primary key autoincrement,2626 did text not null,2727 key text not null,2828- created timestamp default current_timestamp,2828+ created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),2929 unique(did, key),3030 foreign key (did) references known_dids(did) on delete cascade3131 );···3535 did text not null,3636 name text not null,3737 description text not null,3838- created timestamp default current_timestamp,3838+ created text not null default (strftime('%Y-%m-%dT%H:%M:%SZ', 'now')),3939 unique(did, name)4040 );4141