remove recover from recovery url
All checks were successful
Deploy / CreateImage (push) Successful in 3m5s
Deploy / DeployService (push) Successful in 22s

This commit is contained in:
skeris 2025-03-24 00:51:36 +03:00
parent 52b9682f60
commit 73a9cd5544
2 changed files with 6 additions and 6 deletions

@ -41,7 +41,7 @@ func (r *RecoveryEmailSender) SendRecoveryEmail(email string, signature string)
message := fmt.Sprintf(`Здравствуйте, ваша <a href="%s">ссылка для восстановление пароля</a>(доступна всего 15 минут)
Если это были не вы, напишите пожалуйста в техническую поддержку.`, r.recoveryUrl+signature)
Если это были не вы, напишите пожалуйста в техническую поддержку.`, signature)
form := new(bytes.Buffer)
writer := multipart.NewWriter(form)

@ -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"])
}