Skip to content

Commit

Permalink
Merge branch 'dev' into pr-deploy-workflow-patch
Browse files Browse the repository at this point in the history
  • Loading branch information
Cyberguru1 authored Aug 10, 2024
2 parents 7f96551 + 064faac commit 4ffb75b
Show file tree
Hide file tree
Showing 14 changed files with 80 additions and 47 deletions.
1 change: 0 additions & 1 deletion internal/models/contact.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ type ContactUs struct {
ID string `gorm:"type:uuid;primary_key;" json:"id"`
Name string `gorm:"type:varchar(100);not null" json:"name" binding:"required" validate:"required"`
Email string `gorm:"type:varchar(100);not null;index" json:"email" binding:"required" validate:"required,email"`
Subject string `gorm:"type:varchar(255);not null" json:"subject" binding:"required" validate:"required"`
Message string `gorm:"type:text;not null" json:"message" binding:"required" validate:"required"`
CreatedAt time.Time `gorm:"type:timestamp;default:current_timestamp" json:"created_at"`
UpdatedAt time.Time `gorm:"type:timestamp;default:current_timestamp" json:"updated_at"`
Expand Down
6 changes: 6 additions & 0 deletions internal/models/help_center.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,12 @@ import (
"gorm.io/gorm"
)

type HelpCntSummary struct {
ID string `json:"id"`
Title string `json:"title"`
Content string `json:"content"`
Author string `json:"author"`
}

type HelpCenter struct {
ID string `gorm:"type:uuid; primaryKey" json:"id"`
Expand Down
1 change: 0 additions & 1 deletion internal/models/notification.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ type SendSqueeze struct {
type SendContactUsMail struct {
Name string `json:"name" validate:"required"`
Email string `json:"email" `
Subject string `son:"subject" validate:"required"`
Message string `json:"message" validate:"required"`
}

Expand Down
2 changes: 0 additions & 2 deletions services/contact/contact.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ func GetAllContactUs(c *gin.Context, db *gorm.DB) ([]models.ContactUs, *postgres

func AddToContactUs(contact *models.ContactUs, db *gorm.DB) error {

contact.Subject = utility.CleanStringInput(contact.Subject)
contact.Message = utility.CleanStringInput(contact.Message)

if err := contact.CreateContactUs(db); err != nil {
Expand All @@ -44,7 +43,6 @@ func AddToContactUs(contact *models.ContactUs, db *gorm.DB) error {
msgReq := models.ContactUs{
Email: contact.Email,
Name: contact.Name,
Subject: contact.Subject,
Message: contact.Message,
}

Expand Down
31 changes: 12 additions & 19 deletions services/helpcenter/helpcenter.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package service
package helpcenter

import (

Expand All @@ -9,13 +9,6 @@ import (
"gorm.io/gorm"
)

type HelpCntSummary struct {
ID string `json:"id"`
Title string `json:"title"`
Content string `json:"content"`
Author string `json:"author"`
}

func CreateHelpCenterTopic(req models.CreateHelpCenter, db *gorm.DB) (models.HelpCenter, error) {
helpCnt := models.HelpCenter{
ID: utility.GenerateUUID(),
Expand All @@ -33,21 +26,21 @@ func CreateHelpCenterTopic(req models.CreateHelpCenter, db *gorm.DB) (models.Hel
return helpCnt, nil
}

func GetPaginatedTopics(c *gin.Context, db *gorm.DB) ([]HelpCntSummary, postgresql.PaginationResponse, error) {
func GetPaginatedTopics(c *gin.Context, db *gorm.DB) ([]models.HelpCntSummary, postgresql.PaginationResponse, error) {
helpCnt := models.HelpCenter{}
helpCnts, paginationResponse, err := helpCnt.FetchAllTopics(db, c)
topics, paginationResponse, err := helpCnt.FetchAllTopics(db, c)

if err != nil {
return nil, paginationResponse, err
}

if len(helpCnts) == 0 {
return nil, paginationResponse, gorm.ErrRecordNotFound
if len(topics) == 0 {
return []models.HelpCntSummary{}, paginationResponse, nil
}

var topicSummaries []HelpCntSummary
for _, Hlp := range helpCnts {
summary := HelpCntSummary{
var topicSummaries []models.HelpCntSummary
for _, Hlp := range topics {
summary := models.HelpCntSummary{
ID: Hlp.ID,
Title: Hlp.Title,
Content: Hlp.Content,
Expand All @@ -69,7 +62,7 @@ func FetchTopicByID(db *gorm.DB, id string) (models.HelpCenter, error) {
return helpCnt, nil
}

func SearchHelpCenterTopics(c *gin.Context, db *gorm.DB, query string) ([]HelpCntSummary, postgresql.PaginationResponse, error) {
func SearchHelpCenterTopics(c *gin.Context, db *gorm.DB, query string) ([]models.HelpCntSummary, postgresql.PaginationResponse, error) {
var helpCnt models.HelpCenter
topics, paginationResponse, err := helpCnt.SearchHelpCenterTopics(db, c, query)

Expand All @@ -78,12 +71,12 @@ func SearchHelpCenterTopics(c *gin.Context, db *gorm.DB, query string) ([]HelpCn
}

if len(topics) == 0 {
return nil, paginationResponse, gorm.ErrRecordNotFound
return []models.HelpCntSummary{}, paginationResponse, nil
}

var topicSummaries []HelpCntSummary
var topicSummaries []models.HelpCntSummary
for _, topic := range topics {
summary := HelpCntSummary{
summary := models.HelpCntSummary{
ID: topic.ID,
Title: topic.Title,
Content: topic.Content,
Expand Down
70 changes: 62 additions & 8 deletions services/send/email.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package send

import (
"crypto/tls"
"fmt"
"net/smtp"
"strings"
Expand Down Expand Up @@ -111,20 +112,73 @@ func (e *EmailRequest) sendEmailViaSMTP() error {

sender := mailConfig.Username
subject := e.Subject
From := "[email protected]"
recipients := e.To
mime := "\nMIME-version: 1.0;\nContent-Type: text/html; charset=\"UTF-8\";\n\n"
body := []byte(subject + mime + e.Body)
body := []byte(fmt.Sprintf("From: %s\r\nTo: %s\r\n%s%s%s", From, recipients[0], subject, mime, e.Body))

err := smtp.SendMail(
conn, err := tls.Dial(
"tcp",
mailConfig.Server+":"+mailConfig.Port,
auth,
sender,
recipients,
body,
)
&tls.Config{
InsecureSkipVerify: false,
ServerName: mailConfig.Server,
})

if err != nil {

return fmt.Errorf("failed to connect to the server: %v", err)

}

defer conn.Close()

client, err := smtp.NewClient(conn, mailConfig.Server)

if err != nil {
return fmt.Errorf("error connecting to SMTP server: %w", err)

return fmt.Errorf("failed to create SMTP client: %v", err)

}

defer client.Quit()

if err = client.Auth(auth); err != nil {
return fmt.Errorf("failed to authenticate: %v", err)

}

if err = client.Mail(sender); err != nil {
return fmt.Errorf("failed to set the sender: %v", err)

}

if err = client.Rcpt(recipients[0]); err != nil {
return fmt.Errorf("failed to set the recipient: %v", err)

}

writer, err := client.Data()
if err != nil {

return fmt.Errorf("failed to write the message: %v", err)

}

_, err = writer.Write(body)
if err != nil {

return fmt.Errorf("failed to send the message: %v", err)

}

err = writer.Close()
if err != nil {

return fmt.Errorf("failed to close the writer: %v", err)

}

return nil

}
1 change: 0 additions & 1 deletion tests/test_categories/category_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ func TestGetCategoryNames(t *testing.T) {
t.Fatalf("Could not parse response: %v", err)
}

assert.Equal(t, "success", response["status"])
assert.Equal(t, float64(200), response["status_code"])
assert.Equal(t, "Categories fetched successfully", response["message"])

Expand Down
2 changes: 0 additions & 2 deletions tests/test_contact/create_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ func TestAddToContactUs(t *testing.T) {
contactData := models.ContactUs{
Name: "John Doe",
Email: "[email protected]",
Subject: "</br><i>Inquiry about services3 with html",
Message: "I would like to know more about your services3.",
}
payload, _ := json.Marshal(contactData)
Expand Down Expand Up @@ -115,7 +114,6 @@ func TestAddToContactUs(t *testing.T) {
contactData := models.ContactUs{
Name: "John Doe",
Email: "invalid_email",
Subject: "test subject",
Message: "message test",
}
payload, _ := json.Marshal(contactData)
Expand Down
1 change: 0 additions & 1 deletion tests/test_contact/delete_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ func TestDeleteContactUs(t *testing.T) {
contact := models.ContactUs{
ID: utility.GenerateUUID(),
Email: fmt.Sprintf("contact%[email protected]", currUUID),
Subject: fmt.Sprintf("Test subject - %v ", currUUID),
Message: fmt.Sprintf("Test message - %v ", currUUID),
}

Expand Down
4 changes: 0 additions & 4 deletions tests/test_contact/get_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,11 @@ func TestGetAllContactUs(t *testing.T) {
contact1 := models.ContactUs{
ID: utility.GenerateUUID(),
Email: fmt.Sprintf("contact%[email protected]", currUUID),
Subject: fmt.Sprintf("First subject - %v ", currUUID),
Message: fmt.Sprintf("First test message - %v ", currUUID),
}
contact2 := models.ContactUs{
ID: utility.GenerateUUID(),
Email: fmt.Sprintf("contact2%[email protected]", currUUID),
Subject: fmt.Sprintf("Second subject - %v ", currUUID),
Message: fmt.Sprintf("Second test message - %v ", currUUID),
}

Expand Down Expand Up @@ -149,7 +147,6 @@ func TestGetContactUsById(t *testing.T) {
contact := models.ContactUs{
ID: utility.GenerateUUID(),
Email: fmt.Sprintf("contact%[email protected]", currUUID),
Subject: fmt.Sprintf("Test subject - %v ", currUUID),
Message: fmt.Sprintf("Test message - %v ", currUUID),
}

Expand Down Expand Up @@ -251,7 +248,6 @@ func TestGetContactUsByEmail(t *testing.T) {
contact := models.ContactUs{
ID: utility.GenerateUUID(),
Email: fmt.Sprintf("contact%[email protected]", currUUID),
Subject: fmt.Sprintf("Test subject - %v ", currUUID),
Message: fmt.Sprintf("Test message - %v ", currUUID),
}

Expand Down
2 changes: 0 additions & 2 deletions tests/test_users/get_user_privacy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,6 @@ func TestGetUserDataPrivacy(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusOK)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "success")
tests.AssertResponseMessage(t, response["message"].(string), "User data privacy settings retrieved successfully")
})

Expand Down Expand Up @@ -134,7 +133,6 @@ func TestGetUserDataPrivacy(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusNotFound)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "error")
tests.AssertResponseMessage(t, response["message"].(string), "user not found")
})
}
2 changes: 0 additions & 2 deletions tests/test_users/get_user_region_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,6 @@ func TestGetUserRegion(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusOK)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "success")
tests.AssertResponseMessage(t, response["message"].(string), "User region retrieved successfully")

})
Expand Down Expand Up @@ -131,7 +130,6 @@ func TestGetUserRegion(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusNotFound)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "error")
tests.AssertResponseMessage(t, response["message"].(string), "user not found")
})
}
3 changes: 0 additions & 3 deletions tests/test_users/update_user_privacy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ func TestUpdateUserDataPrivacy(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusOK)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "success")
tests.AssertResponseMessage(t, response["message"].(string), "User data privacy settings updated successfully")
})

Expand Down Expand Up @@ -124,7 +123,6 @@ func TestUpdateUserDataPrivacy(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusOK)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "success")
tests.AssertResponseMessage(t, response["message"].(string), "User data privacy settings updated successfully")
})

Expand Down Expand Up @@ -181,7 +179,6 @@ func TestUpdateUserDataPrivacy(t *testing.T) {

tests.AssertStatusCode(t, resp.Code, http.StatusNotFound)
response := tests.ParseResponse(resp)
tests.AssertResponseMessage(t, response["status"].(string), "error")
tests.AssertResponseMessage(t, response["message"].(string), "user not found")
})
}
1 change: 0 additions & 1 deletion utility/response.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ func ResponseMessage(code int, status string, name string, message string, err i
res := Response{
StatusCode: code,
Name: name,
Status: status,
Message: message,
Error: err,
Data: data,
Expand Down

0 comments on commit 4ffb75b

Please sign in to comment.