Add groups to NatsResponse

This commit is contained in:
mr
2026-03-12 09:10:14 +01:00
parent 72d35d4b18
commit 57ec428d63
5 changed files with 18 additions and 15 deletions

View File

@@ -74,7 +74,7 @@ func (o *PeerController) Get() {
// @Success 200 {peer} models.peer
// @router /peer/:id/valid [get]
func (o *PeerController) Valid() {
user, _, _ := oclib.ExtractTokenInfo(*o.Ctx.Request)
user, _, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
id := o.Ctx.Input.Param(":id")
/*if ok, _ := oclib.IsMySelf(peerID); !ok {
o.Data["json"] = map[string]interface{}{
@@ -104,7 +104,7 @@ func (o *PeerController) Valid() {
fmt.Println(l.Data, data.Data)
if data.Data != nil {
b, _ := json.Marshal(data.Data)
go infrastructure.EmitNATS(user, tools.PropalgationMessage{
go infrastructure.EmitNATS(user, groups, tools.PropalgationMessage{
DataType: tools.PEER.EnumIndex(),
Action: tools.PB_CREATE,
Payload: b,
@@ -128,11 +128,11 @@ func (o *PeerController) Valid() {
// @Success 200 {peer} models.peer
// @router /peer/:id/unknown [post]
func (o *PeerController) Unknown() {
user, _, _ := oclib.ExtractTokenInfo(*o.Ctx.Request)
user, _, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
id := o.Ctx.Input.Param(":id")
req := oclib.NewRequestAdmin(oclib.LibDataEnum(oclib.PEER), nil)
data := req.LoadOne(id)
o.changeRelation(data.ToPeer(), user, peer.NONE, req)
o.changeRelation(data.ToPeer(), user, groups, peer.NONE, req)
}
// @Title Partner
@@ -141,11 +141,11 @@ func (o *PeerController) Unknown() {
// @Success 200 {peer} models.peer
// @router /peer/:id/partner [post]
func (o *PeerController) Partner() {
user, _, _ := oclib.ExtractTokenInfo(*o.Ctx.Request)
user, _, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
id := o.Ctx.Input.Param(":id")
req := oclib.NewRequestAdmin(oclib.LibDataEnum(oclib.PEER), nil)
data := req.LoadOne(id)
o.changeRelation(data.ToPeer(), user, peer.PARTNER, req)
o.changeRelation(data.ToPeer(), user, groups, peer.PARTNER, req)
}
// @Title Blacklist
@@ -154,15 +154,15 @@ func (o *PeerController) Partner() {
// @Success 200 {peer} models.peer
// @router /peer/:id/blacklist [post]
func (o *PeerController) Blacklist() {
user, _, _ := oclib.ExtractTokenInfo(*o.Ctx.Request)
user, _, groups := oclib.ExtractTokenInfo(*o.Ctx.Request)
id := o.Ctx.Input.Param(":id")
req := oclib.NewRequestAdmin(oclib.LibDataEnum(oclib.PEER), nil)
data := req.LoadOne(id)
o.changeRelation(data.ToPeer(), user, peer.BLACKLIST, req)
o.changeRelation(data.ToPeer(), user, groups, peer.BLACKLIST, req)
}
// used from : peer ask, or response, only from peer origin is authorized to change...
func (o *PeerController) changeRelation(dest *peer.Peer, user string, relation peer.PeerRelation, request *oclib.Request) {
func (o *PeerController) changeRelation(dest *peer.Peer, user string, groups []string, relation peer.PeerRelation, request *oclib.Request) {
/*if ok, _ := oclib.IsMySelf(request.PeerID); !ok {
o.Data["json"] = map[string]interface{}{
"data": nil,
@@ -201,7 +201,7 @@ func (o *PeerController) changeRelation(dest *peer.Peer, user string, relation p
fmt.Println(data.Err, data.Data)
if data.Err == "" && data.Data != nil {
b, _ := json.Marshal(data.Data)
go infrastructure.EmitNATS(user, tools.PropalgationMessage{
go infrastructure.EmitNATS(user, groups, tools.PropalgationMessage{
DataType: tools.PEER.EnumIndex(),
Action: tools.PB_CREATE,
Payload: b,