diff --git a/db/db.go b/db/db.go index fb79a6919..cdc056d8b 100644 --- a/db/db.go +++ b/db/db.go @@ -1778,13 +1778,13 @@ func (db database) GetOrganizationStatusBudget(org_uuid string) StatusBudget { orgBudget := db.GetOrganizationBudget(org_uuid) var openBudget uint - db.db.Model(&Bounty{}).Where("assignee = '' ").Select("SUM(price)").Row().Scan(&openBudget) + db.db.Model(&Bounty{}).Where("assignee = '' ").Where("paid != true").Select("SUM(price)").Row().Scan(&openBudget) var assignedBudget uint - db.db.Model(&Bounty{}).Where("assignee != '' ").Select("SUM(price)").Row().Scan(&assignedBudget) + db.db.Model(&Bounty{}).Where("assignee != '' ").Where("paid != true").Select("SUM(price)").Row().Scan(&assignedBudget) var completedBudget uint - db.db.Model(&Bounty{}).Where("completed = true ").Select("SUM(price)").Row().Scan(&completedBudget) + db.db.Model(&Bounty{}).Where("completed = true ").Where("paid != true").Select("SUM(price)").Row().Scan(&completedBudget) statusBudget := StatusBudget{ OrgUuid: org_uuid, diff --git a/db/store.go b/db/store.go index f27874682..b9461af5e 100644 --- a/db/store.go +++ b/db/store.go @@ -1,17 +1,18 @@ package db import ( - "encoding/base64" "encoding/json" "errors" "fmt" "io" "net/http" "strconv" + "sync" "time" "github.com/go-chi/chi" "github.com/patrickmn/go-cache" + "github.com/rs/xid" "github.com/stakwork/sphinx-tribes/auth" "github.com/stakwork/sphinx-tribes/config" ) @@ -132,10 +133,11 @@ func (s StoreData) GetChallengeCache(key string) (string, error) { } func Ask(w http.ResponseWriter, r *http.Request) { + var m sync.Mutex + m.Lock() + ts := strconv.Itoa(int(time.Now().Unix())) - h := []byte(ts) - // h := blake2b.Sum256([]byte(ts)) - challenge := base64.URLEncoding.EncodeToString(h[:]) + challenge := xid.New().String() Store.SetChallengeCache(challenge, ts) @@ -144,6 +146,7 @@ func Ask(w http.ResponseWriter, r *http.Request) { "challenge": challenge, "ts": ts, }) + m.Unlock() } type VerifyPayload struct {