Merge pull request 'fix: migrate display_name' (#14) from post-core-sep-fixes into main
Reviewed-on: #14
This commit is contained in:
commit
0603386f4c
|
|
@ -2,5 +2,27 @@ BEGIN TRANSACTION;
|
|||
|
||||
ALTER TABLE gift RENAME TO wish;
|
||||
|
||||
ALTER TABLE user ADD COLUMN display_name TEXT NOT NULL DEFAULT "";
|
||||
|
||||
UPDATE user SET display_name = name;
|
||||
|
||||
ALTER TABLE user RENAME TO old_user;
|
||||
|
||||
CREATE TABLE "user" (
|
||||
"id" INTEGER NOT NULL UNIQUE,
|
||||
"name" TEXT NOT NULL UNIQUE,
|
||||
"display_name" TEXT NOT NULL UNIQUE,
|
||||
"reference" TEXT NOT NULL UNIQUE,
|
||||
"motto" TEXT NOT NULL DEFAULT "",
|
||||
"password_hash" TEXT NOT NULL,
|
||||
"is_admin" INTEGER NOT NULL DEFAULT 0,
|
||||
"is_live" INTEGER NOT NULL DEFAULT 1,
|
||||
PRIMARY KEY("id" AUTOINCREMENT)
|
||||
);
|
||||
|
||||
INSERT INTO user (id, name, display_name, reference, motto, password_hash, is_admin, is_live) SELECT id, name, name, reference, motto, password_hash, is_admin, is_live FROM old_user;
|
||||
|
||||
DROP TABLE "old_user";
|
||||
|
||||
COMMIT;
|
||||
|
||||
|
|
|
|||
20
core/sesh
20
core/sesh
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"__meta__": {
|
||||
"about": "xh session file",
|
||||
"xh": "0.24.1"
|
||||
},
|
||||
"auth": {
|
||||
"type": null,
|
||||
"raw_auth": null
|
||||
},
|
||||
"cookies": [
|
||||
{
|
||||
"name": "lishwist_user",
|
||||
"value": "MTc1MDg2NDE2N3xCQXdBQVRjPXw8gaasdVy--TC-_fUb-3ZL58n8UVakTqDm_0_7c50cYA==",
|
||||
"expires": 1750950567,
|
||||
"path": "/lists",
|
||||
"domain": "127.0.0.1"
|
||||
}
|
||||
],
|
||||
"headers": []
|
||||
}
|
||||
|
|
@ -1,9 +1,6 @@
|
|||
package api
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
lishwist "lishwist/core"
|
||||
"lishwist/http/templates"
|
||||
)
|
||||
|
||||
|
|
@ -43,30 +40,3 @@ func (p *LoginProps) Validate() (valid bool) {
|
|||
|
||||
return
|
||||
}
|
||||
|
||||
func Login(username, password string) *LoginProps {
|
||||
props := NewLoginProps(username, password)
|
||||
|
||||
valid := props.Validate()
|
||||
props.Password.Value = ""
|
||||
if !valid {
|
||||
log.Printf("Invalid props: %#v\n", props)
|
||||
return props
|
||||
}
|
||||
|
||||
_, err := lishwist.Login(props.Username.Value, props.Password.Value)
|
||||
if err == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
switch err.(type) {
|
||||
case lishwist.ErrorInvalidCredentials:
|
||||
log.Printf("Invalid credentials: %w\n", err)
|
||||
props.GeneralError = "Username or password invalid"
|
||||
return props
|
||||
default:
|
||||
log.Printf("Login error: %w\n", err)
|
||||
props.GeneralError = "Something went wrong."
|
||||
return props
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,19 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
)
|
||||
|
||||
func main() {
|
||||
passwordHash := []byte(os.Args[1])
|
||||
password := []byte(os.Args[2])
|
||||
err := bcrypt.CompareHashAndPassword(passwordHash, password)
|
||||
if err != nil {
|
||||
log.Fatalln("Failed to match: ", err)
|
||||
}
|
||||
fmt.Println("Match!")
|
||||
}
|
||||
|
|
@ -53,7 +53,7 @@ func LoginPost(h http.Header, r *rsvp.Request) rsvp.Response {
|
|||
case lishwist.ErrorInvalidCredentials:
|
||||
props.GeneralError = "Username or password invalid"
|
||||
session.FlashSet(&props)
|
||||
return rsvp.SeeOther("/").SaveSession(session).Log("Invalid credentials: %#v\n", props)
|
||||
return rsvp.SeeOther("/").SaveSession(session).Log("Invalid credentials: %s: %#v\n", err, props)
|
||||
default:
|
||||
props.GeneralError = "Something went wrong."
|
||||
session.FlashSet(&props)
|
||||
|
|
|
|||
Loading…
Reference in New Issue