Files
email-notification/helper/helper.go
2025-04-18 18:21:38 +07:00

68 lines
1.2 KiB
Go

package helper
import (
"bytes"
"fmt"
"html/template"
"log"
"time"
"github.com/google/uuid"
)
func GenerateSessionID() string {
return uuid.New().String()
}
func ParseHTML(filePath string, v any) string {
tmpl, err := template.ParseFiles(filePath)
if err != nil {
log.Printf("Error parsing template: %v", err)
}
// type Data struct {
// Name string
// }
// data := Data{Name: name}
var buf bytes.Buffer
if err := tmpl.Execute(&buf, v); err != nil {
log.Printf("Error executing template: %v", err)
}
return buf.String()
}
func FormatSince(t time.Time) string {
now := time.Now()
dur := now.Sub(t)
years := int(dur.Hours() / 24 / 365)
if years > 0 {
return fmt.Sprintf("%d", years)
}
// months := int(dur.Hours() / 24 / 30)
// if months > 0 {
// return fmt.Sprintf("%d bulan yang lalu", months)
// }
// days := int(dur.Hours() / 24)
// if days > 0 {
// return fmt.Sprintf("%d hari yang lalu", days)
// }
// hours := int(dur.Hours())
// if hours > 0 {
// return fmt.Sprintf("%d jam yang lalu", hours)
// }
// minutes := int(dur.Minutes())
// if minutes > 0 {
// return fmt.Sprintf("%d menit yang lalu", minutes)
// }
return "baru saja"
}