Files
libredesk/internal/user/notes.go
T
Abhinav Raut 81847c7f4e i18n: fix localization issues (#231)
Not backported to main due to extensive i18n refactoring changes in this branch.
2026-02-22 15:12:00 +05:30

46 lines
1.6 KiB
Go

package user
import (
"github.com/abhinavxd/libredesk/internal/envelope"
"github.com/abhinavxd/libredesk/internal/user/models"
)
// GetNotes returns all notes for a user.
func (u *Manager) GetNotes(id int) ([]models.Note, error) {
var notes = make([]models.Note, 0)
if err := u.q.GetNotes.Select(&notes, id); err != nil {
u.lo.Error("error fetching user notes", "error", err)
return notes, envelope.NewError(envelope.GeneralError, u.i18n.T("globals.messages.somethingWentWrong"), nil)
}
return notes, nil
}
// GetNote returns a note by its ID.
func (u *Manager) GetNote(id int) (models.Note, error) {
var note models.Note
if err := u.q.GetNote.Get(&note, id); err != nil {
u.lo.Error("error fetching user note", "error", err)
return note, envelope.NewError(envelope.GeneralError, u.i18n.T("globals.messages.somethingWentWrong"), nil)
}
return note, nil
}
// CreateNote creates a new note for a user.
func (u *Manager) CreateNote(userID, authorID int, note string) (models.Note, error) {
var createdNote models.Note
if err := u.q.InsertNote.Get(&createdNote, userID, authorID, note); err != nil {
u.lo.Error("error creating user note", "error", err)
return createdNote, envelope.NewError(envelope.GeneralError, u.i18n.T("globals.messages.somethingWentWrong"), nil)
}
return createdNote, nil
}
// DeleteNote deletes a note for a user.
func (u *Manager) DeleteNote(noteID int, contactID int) error {
if _, err := u.q.DeleteNote.Exec(noteID, contactID); err != nil {
u.lo.Error("error deleting user note", "error", err)
return envelope.NewError(envelope.GeneralError, u.i18n.T("globals.messages.somethingWentWrong"), nil)
}
return nil
}