From 84a33d9a2e3d037f5ee8c43edfade288d71c557a Mon Sep 17 00:00:00 2001 From: Mikhail Date: Wed, 12 Apr 2023 21:18:55 +0000 Subject: [PATCH 01/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index f5f9e7d..c2276c9 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -116,6 +116,8 @@ func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { next.ServeHTTP(w, r.WithContext(ctx)) return } +fmt.Println("HEADERS", r.Header) + if len(r.Header[jwt_adapter.DefaultHeaderKey]) <= 0 { if len(r.Header[sessionKey]) <= 0 { if sessCookie, err := r.Cookie(sessionKey); err != nil { From 14f84b21cc77de7d1e21db9309e27fcaff0c13d5 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 13:21:33 +0000 Subject: [PATCH 02/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index fddbf05..8b745db 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -116,7 +116,6 @@ func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { next.ServeHTTP(w, r.WithContext(ctx)) return } -fmt.Println("HEADERS", r.Header) if len(r.Header[jwt_adapter.DefaultHeaderKey]) <= 0 { if len(r.Header[sessionKey]) <= 0 { @@ -127,6 +126,7 @@ fmt.Println("HEADERS", r.Header) Name: sessionKey, Value: id, Expires: time.Now().Add(time.Hour * 24 * 30), + SameSite: http.SameSiteNoneMode, }) } else { adapter = &jwt_adapter.JwtAdapter{Id: sessCookie.Value} From 96f2d76acc0a11f9dd94bd886228b472ef5ad4d0 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 14:11:44 +0000 Subject: [PATCH 03/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 1 + 1 file changed, 1 insertion(+) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index 8b745db..4b42c03 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -95,6 +95,7 @@ func (mw *Middleware) MiddlewareRecovery(next http.Handler) http.Handler { func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Access-Control-Allow-Origin", "https://"+r.Header["Referer"][0]) var ( token, role string From 03592eaa12809e0005cd83a67d67b180dd5abc35 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 14:26:42 +0000 Subject: [PATCH 04/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index 4b42c03..b915d6a 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -95,7 +95,7 @@ func (mw *Middleware) MiddlewareRecovery(next http.Handler) http.Handler { func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Access-Control-Allow-Origin", "https://"+r.Header["Referer"][0]) + w.Header().Set("Access-Control-Allow-Origin", "*") var ( token, role string From 427653700155a1b045e592fff2141f1571223f47 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 14:41:42 +0000 Subject: [PATCH 05/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 1 - 1 file changed, 1 deletion(-) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index b915d6a..8b745db 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -95,7 +95,6 @@ func (mw *Middleware) MiddlewareRecovery(next http.Handler) http.Handler { func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Access-Control-Allow-Origin", "*") var ( token, role string From 1f3c6b706f85e1668a84b06227985dffc9570d11 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 15:16:49 +0000 Subject: [PATCH 06/15] Update middleware/http_middleware.go --- middleware/http_middleware.go | 1 + 1 file changed, 1 insertion(+) diff --git a/middleware/http_middleware.go b/middleware/http_middleware.go index 8b745db..6d5219d 100644 --- a/middleware/http_middleware.go +++ b/middleware/http_middleware.go @@ -127,6 +127,7 @@ func (mw *Middleware) MiddlewareJwt(next http.Handler) http.Handler { Value: id, Expires: time.Now().Add(time.Hour * 24 * 30), SameSite: http.SameSiteNoneMode, + Secure: true, }) } else { adapter = &jwt_adapter.JwtAdapter{Id: sessCookie.Value} From c8f48599224edcab2505cc43ed3c61e2874d1165 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 17:11:50 +0000 Subject: [PATCH 07/15] Update service/service.go --- service/service.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/service.go b/service/service.go index 6c22cd3..fdaf8df 100644 --- a/service/service.go +++ b/service/service.go @@ -293,10 +293,10 @@ func (h *Heruvym) PutMessage( go func() { if sess.Id != "" { - additional, err := h.dal.GetAdditionalData(context.TODO(), sess.Id) - fmt.Println("CAN NOT NOTIFY", err) if err == nil && h.notifier != nil { + additional, err := h.dal.GetAdditionalData(context.TODO(), sess.Id) + fmt.Println("CAN NOT NOTIFY", err) if _, err := h.notifier.Send(tb.ChatID(-1001344671794), fmt.Sprintf("Поступило новое сообщение от пользователя %d с почтой %s", additional.Uid, additional.Email)); err != nil { From 860cbf5b01dc570b93db38125813b14c2b564d8a Mon Sep 17 00:00:00 2001 From: Mikhail Date: Thu, 13 Apr 2023 18:08:35 +0000 Subject: [PATCH 08/15] Update service/service.go --- service/service.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/service/service.go b/service/service.go index fdaf8df..8edcd4a 100644 --- a/service/service.go +++ b/service/service.go @@ -276,6 +276,7 @@ func (h *Heruvym) PutMessage( request ReqPutMessage, ) (interface{}, int) { sess := jwt_adapter.Get(ctx) + fmt.Println("PUTMES", sess) request.Files = []string{} @@ -288,6 +289,7 @@ func (h *Heruvym) PutMessage( []string{}, ) if err != nil { + fmt.Println("PUTMES1", err) return errors.New("can not put message"), http.StatusInternalServerError } @@ -315,6 +317,7 @@ func (h *Heruvym) PutMessage( }() if err := h.dal.UpdateTopMessage(ctx, request.TicketID, message); err != nil { + fmt.Println("PUTMES2", err) return errors.New("can not update ticket"), http.StatusInternalServerError } From 3d121bad32a4baf31cf38480e5f867eba12d7b09 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Fri, 14 Apr 2023 17:38:55 +0000 Subject: [PATCH 09/15] Update service/service.go --- service/service.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/service/service.go b/service/service.go index 05f210a..b04407c 100644 --- a/service/service.go +++ b/service/service.go @@ -445,7 +445,7 @@ func (h *Heruvym) Subscribe(ctx context.Context) chan interface{} { output <- errors.New("no tickets 4 user") } - if err := h.dal.YieldMessages(ctx, ticketID, func(message model.Message) error { + /*if err := h.dal.YieldMessages(ctx, ticketID, func(message model.Message) error { output <- message //if err := h.dal.SetShown(ctx, message.ID, sess.User); err != nil { @@ -458,7 +458,7 @@ func (h *Heruvym) Subscribe(ctx context.Context) chan interface{} { }); err != nil { fmt.Println("1", err) output <- errors.New("cannot read messages " + err.Error()) - } + }*/ if err := h.dal.WatchMessages(ctx, ticketID, func(message model.Message) error { From 00c539f6e8d405e8a7853bac83481fbca4c805b3 Mon Sep 17 00:00:00 2001 From: skeris Date: Sat, 6 May 2023 19:36:11 +0300 Subject: [PATCH 10/15] fix: send messages to channel on message --- app/app.go | 4 +--- service/service.go | 11 ++++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/app.go b/app/app.go index c774d8d..5ff3022 100644 --- a/app/app.go +++ b/app/app.go @@ -126,9 +126,8 @@ func New(ctx context.Context, opts interface{}, ver appInit.Version) (appInit.Co } var newBot *tb.Bot - /*if options.LoggerDevMode { newBot, err = tb.NewBot(tb.Settings{ - Token: "5240336345:AAG6ZXm6IYqsIZn7SoJTltJWviOXhVa4D0c", + Token: "5851043588:AAGXhigZAaNV1--n-jfS8eBgM7iZ2IDm668", Verbose: false, ParseMode: tb.ModeHTML, Poller: &tb.LongPoller{ @@ -139,7 +138,6 @@ func New(ctx context.Context, opts interface{}, ver appInit.Version) (appInit.Co //logger.Emit(json.Token(err)) return nil, err } - }*/ heruvym := service.New(blobStore, database, logger, newBot) diff --git a/service/service.go b/service/service.go index 1477dca..e8120e2 100644 --- a/service/service.go +++ b/service/service.go @@ -294,7 +294,9 @@ func (h *Heruvym) PutMessage( } go func() { - if sess.Id != "" { + /*if sess.Id != "" { + additional, err := h.dal.GetAdditionalData(context.TODO(), sess.Id) + fmt.Println("CAN NOT NOTIFY", err) if err == nil && h.notifier != nil { additional, err := h.dal.GetAdditionalData(context.TODO(), sess.Id) @@ -306,18 +308,17 @@ func (h *Heruvym) PutMessage( } return } - } + }*/ if h.notifier != nil { - if _, err := h.notifier.Send(tb.ChatID(-1001344671794), + if _, err := h.notifier.Send(tb.ChatID(-1001802261459), fmt.Sprintf( - "Поступило новое сообщение от незарегистриованного пользователя")); err != nil { + "Поступило новое сообщение")); err != nil { fmt.Println("CAN NOT NOTIFY", err) } } }() if err := h.dal.UpdateTopMessage(ctx, request.TicketID, message); err != nil { - fmt.Println("PUTMES2", err) return errors.New("can not update ticket"), http.StatusInternalServerError } From 086cd354d724f80beb79c3e35bc3ffa3f6f8bcd6 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Sat, 6 May 2023 17:20:43 +0000 Subject: [PATCH 11/15] Update app/app.go --- app/app.go | 1 + 1 file changed, 1 insertion(+) diff --git a/app/app.go b/app/app.go index 5ff3022..e1a202e 100644 --- a/app/app.go +++ b/app/app.go @@ -11,6 +11,7 @@ import ( "heruvym/service" "heruvym/tools" "net/http" + "time" "github.com/skeris/appInit" tb "gopkg.in/tucnak/telebot.v2" From 18ef5b2d2b7e7813f7ec5920932ae7b715e98b7f Mon Sep 17 00:00:00 2001 From: Mikhail Date: Sat, 6 May 2023 18:45:56 +0000 Subject: [PATCH 12/15] Update service/service.go --- service/service.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/service/service.go b/service/service.go index e8120e2..4d02d57 100644 --- a/service/service.go +++ b/service/service.go @@ -138,6 +138,13 @@ func (h *Heruvym) CreateTicket(w http.ResponseWriter, r *http.Request) { http.Error(w, "CannotCreateMessage", http.StatusInternalServerError) return } + if h.notifier != nil { + if _, err := h.notifier.Send(tb.ChatID(-1001802261459), + fmt.Sprintf( + "Поступило новое сообщение")); err != nil { + fmt.Println("CAN NOT NOTIFY", err) + } + } } else { ticketID = tickets[0].ID } From 44396297a15100ff272bb34895aa0f1dbd7eb278 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Tue, 9 May 2023 11:09:39 +0000 Subject: [PATCH 13/15] Update file app.go --- app/app.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/app.go b/app/app.go index e1a202e..46e77df 100644 --- a/app/app.go +++ b/app/app.go @@ -167,10 +167,10 @@ func New(ctx context.Context, opts interface{}, ver appInit.Version) (appInit.Co mux.Use( func(handler http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - w.Header().Set("Access-Control-Allow-Origin", r.Header["Origin"][0]) - w.Header().Set("Access-Control-Allow-Credentials", "true") - w.Header().Set("Access-Control-Allow-Headers", "content-type") - w.Header().Set("Access-Control-Expose-Headers", "*") + // w.Header().Set("Access-Control-Allow-Origin", r.Header["Origin"][0]) + // w.Header().Set("Access-Control-Allow-Credentials", "true") + // w.Header().Set("Access-Control-Allow-Headers", "content-type") + // w.Header().Set("Access-Control-Expose-Headers", "*") if r.Method == http.MethodOptions { return } From c10e1be4892348406cf401ef751cbca18c192824 Mon Sep 17 00:00:00 2001 From: Mikhail Date: Tue, 9 May 2023 19:29:19 +0000 Subject: [PATCH 14/15] Update file service.go --- service/service.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/service/service.go b/service/service.go index 4d02d57..f15cf71 100644 --- a/service/service.go +++ b/service/service.go @@ -317,11 +317,15 @@ func (h *Heruvym) PutMessage( } }*/ if h.notifier != nil { - if _, err := h.notifier.Send(tb.ChatID(-1001802261459), + role := jwt_adapter.GetRole(ctx) + + if role == "admin" || role == "manager" { + if _, err := h.notifier.Send(tb.ChatID(-1001802261459), fmt.Sprintf( "Поступило новое сообщение")); err != nil { fmt.Println("CAN NOT NOTIFY", err) } + } } }() From b08402b06699a1a08a1bace37734733f67226ffa Mon Sep 17 00:00:00 2001 From: Mikhail Date: Tue, 9 May 2023 20:09:01 +0000 Subject: [PATCH 15/15] Update file service.go --- service/service.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/service/service.go b/service/service.go index f15cf71..7d3c3f3 100644 --- a/service/service.go +++ b/service/service.go @@ -319,7 +319,7 @@ func (h *Heruvym) PutMessage( if h.notifier != nil { role := jwt_adapter.GetRole(ctx) - if role == "admin" || role == "manager" { + if role != "admin" && role != "manager" { if _, err := h.notifier.Send(tb.ChatID(-1001802261459), fmt.Sprintf( "Поступило новое сообщение")); err != nil {