From 73a9cd55449207432714bd78a7de190dc6fa01f5 Mon Sep 17 00:00:00 2001 From: skeris Date: Mon, 24 Mar 2025 00:51:36 +0300 Subject: [PATCH] remove recover from recovery url --- internal/adapters/client/mail.go | 2 +- .../client/client_recovery/recovery_controller.go | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/internal/adapters/client/mail.go b/internal/adapters/client/mail.go index 2c3e491..dfafc5a 100644 --- a/internal/adapters/client/mail.go +++ b/internal/adapters/client/mail.go @@ -41,7 +41,7 @@ func (r *RecoveryEmailSender) SendRecoveryEmail(email string, signature string) message := fmt.Sprintf(`Здравствуйте, ваша ссылка для восстановление пароля(доступна всего 15 минут) -Если это были не вы, напишите пожалуйста в техническую поддержку.`, r.recoveryUrl+signature) +Если это были не вы, напишите пожалуйста в техническую поддержку.`, signature) form := new(bytes.Buffer) writer := multipart.NewWriter(form) diff --git a/internal/controller/client/client_recovery/recovery_controller.go b/internal/controller/client/client_recovery/recovery_controller.go index 9c606ba..c6403fa 100644 --- a/internal/controller/client/client_recovery/recovery_controller.go +++ b/internal/controller/client/client_recovery/recovery_controller.go @@ -48,7 +48,7 @@ func (r *RecoveryController) HandleRecoveryRequest(c *fiber.Ctx) error { return c.Status(fiber.StatusBadRequest).JSON(fiber.Map{"error": "email is required"}) } - referralURL := c.Get("Referrer") + referralURL := c.Get("Referer") if req.RedirectionURL == "" && referralURL != "" { req.RedirectionURL = referralURL @@ -68,7 +68,7 @@ func (r *RecoveryController) HandleRecoveryRequest(c *fiber.Ctx) error { return c.Status(fiber.StatusInternalServerError).JSON(fiber.Map{"error": "Internal Server Error"}) } - signUrl := req.RedirectionURL + signUrl := referralURL +"/codeword/v1.0.0/recover"+ req.RedirectionURL sign := base64.URLEncoding.EncodeToString(key) id, err := r.service.StoreRecoveryRecord(c.Context(), models.StoreRecDeps{ @@ -84,7 +84,7 @@ func (r *RecoveryController) HandleRecoveryRequest(c *fiber.Ctx) error { signWithID := sign + id // подпись с id записи - err = r.service.RecoveryEmailTask(c.Context(), models.RecEmailDeps{UserID: user.ID.Hex(), Email: req.Email, SignWithID: strings.Replace(signUrl, "/changepwd","",1)+"/codeword/recover/"+signWithID, ID: id}) + err = r.service.RecoveryEmailTask(c.Context(), models.RecEmailDeps{UserID: user.ID.Hex(), Email: req.Email, SignWithID: strings.Replace(signUrl, "/changepwd","",1) + "/"+signWithID, ID: id}) if err != nil { r.logger.Error("Failed to send recovery email", zap.Error(err)) @@ -112,7 +112,7 @@ func (r *RecoveryController) HandleRecoveryLink(c *fiber.Ctx) error { record, err := r.service.GetRecoveryRecord(c.Context(), sign) if err != nil { r.logger.Error("Recovery link expired", zap.String("signature", sign)) - return c.Redirect("https://shub.pena.digital/recover/expired") + return c.Redirect("https://hub.pena.digital/recover/expired") } if time.Since(record.CreatedAt) > 15*time.Minute { @@ -148,5 +148,5 @@ func (r *RecoveryController) HandleRecoveryLink(c *fiber.Ctx) error { CtxUserID: record.UserID, }) - return c.Redirect(record.SignUrl + "?auth=" + tokens["accessToken"]) + return c.Redirect("https://" + strings.Replace(record.SignUrl,"/codeword/v1.0.0/recover","",1) + "?auth=" + tokens["accessToken"]) }