handlers

package
v0.0.0-...-8e868a9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 31, 2025 License: MIT Imports: 39 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildRouter

func BuildRouter(c *services.Container) error

BuildRouter builds the router.

func Register

func Register(h Handler)

Register registers a handler

func SendPhoneVerification

func SendPhoneVerification(ctx echo.Context, container *services.Container, user *ent.User, method string) error

SendPhoneVerification generates a verification token and queues a phone verification task

Types

type API

type API struct {
	// contains filtered or unexported fields
}

func (*API) AdminGetUser

func (h *API) AdminGetUser(ctx echo.Context) error

func (*API) AdminListUsers

func (h *API) AdminListUsers(ctx echo.Context) error

func (*API) AdminOverview

func (h *API) AdminOverview(ctx echo.Context) error

Admin endpoints

func (*API) AdminVerifyUser

func (h *API) AdminVerifyUser(ctx echo.Context) error

func (*API) ChangePassword

func (h *API) ChangePassword(ctx echo.Context) error

func (*API) CreateTask

func (h *API) CreateTask(ctx echo.Context) error

Task endpoint

func (*API) DeactivateAccount

func (h *API) DeactivateAccount(ctx echo.Context) error

func (*API) ForgotPassword

func (h *API) ForgotPassword(ctx echo.Context) error

func (*API) GetProfile

func (h *API) GetProfile(ctx echo.Context) error

Profile endpoints

func (*API) HandleWebhook

func (h *API) HandleWebhook(c echo.Context) error

HandleWebhook processes incoming WhatsApp messages and button responses

func (*API) HealthCheck

func (h *API) HealthCheck(ctx echo.Context) error

HealthCheck for API availability

func (*API) Init

func (h *API) Init(c *services.Container) error

Init initializes the API handler with the service container

func (*API) ListFiles

func (h *API) ListFiles(ctx echo.Context) error

File endpoints

func (*API) Login

func (h *API) Login(ctx echo.Context) error

func (*API) Logout

func (h *API) Logout(ctx echo.Context) error

func (*API) Register

func (h *API) Register(ctx echo.Context) error

Mobile API Authentication Methods

func (*API) ResendVerification

func (h *API) ResendVerification(ctx echo.Context) error

func (*API) ResetPassword

func (h *API) ResetPassword(ctx echo.Context) error

func (*API) Routes

func (h *API) Routes(g *echo.Group)

Routes registers all external API routes

func (*API) Search

func (h *API) Search(ctx echo.Context) error

Search endpoint

func (*API) SubmitContact

func (h *API) SubmitContact(ctx echo.Context) error

Contact endpoint

func (*API) UpdateProfile

func (h *API) UpdateProfile(ctx echo.Context) error

func (*API) UpdateProfilePicture

func (h *API) UpdateProfilePicture(ctx echo.Context) error

func (*API) UploadFile

func (h *API) UploadFile(ctx echo.Context) error

func (*API) VerifyWebhook

func (h *API) VerifyWebhook(c echo.Context) error

VerifyWebhook handles webhook verification from 360dialog

type Admin

type Admin struct {
	// contains filtered or unexported fields
}

func (*Admin) AdminTasks

func (h *Admin) AdminTasks(ctx echo.Context) error

AdminTasks displays the admin tasks page with proper layout

func (*Admin) Backlite

func (h *Admin) Backlite(handler func(http.ResponseWriter, *http.Request) error) echo.HandlerFunc

func (*Admin) EntityAdd

func (h *Admin) EntityAdd(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityAddSubmit

func (h *Admin) EntityAddSubmit(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityDelete

func (h *Admin) EntityDelete(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityDeleteSubmit

func (h *Admin) EntityDeleteSubmit(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityEdit

func (h *Admin) EntityEdit(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityEditSubmit

func (h *Admin) EntityEditSubmit(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityList

func (h *Admin) EntityList(n *gen.Type) echo.HandlerFunc

func (*Admin) EntityView

func (h *Admin) EntityView(n *gen.Type) echo.HandlerFunc

func (*Admin) Init

func (h *Admin) Init(c *services.Container) error

func (*Admin) Overview

func (h *Admin) Overview() echo.HandlerFunc

Overview displays the admin dashboard

func (*Admin) Routes

func (h *Admin) Routes(g *echo.Group)

func (*Admin) VerifyUser

func (h *Admin) VerifyUser(ctx echo.Context) error

VerifyUser handles POST /admin/user/:id/verify to manually verify a user account

type Auth

type Auth struct {
	// contains filtered or unexported fields
}

func (*Auth) ForgotPasswordPage

func (h *Auth) ForgotPasswordPage(ctx echo.Context) error

func (*Auth) ForgotPasswordSubmit

func (h *Auth) ForgotPasswordSubmit(ctx echo.Context) error

func (*Auth) Init

func (h *Auth) Init(c *services.Container) error

func (*Auth) LoginPage

func (h *Auth) LoginPage(ctx echo.Context) error

func (*Auth) LoginSubmit

func (h *Auth) LoginSubmit(ctx echo.Context) error

func (*Auth) Logout

func (h *Auth) Logout(ctx echo.Context) error

func (*Auth) RegisterPage

func (h *Auth) RegisterPage(ctx echo.Context) error

func (*Auth) RegisterSubmit

func (h *Auth) RegisterSubmit(ctx echo.Context) error

func (*Auth) ResendVerification

func (h *Auth) ResendVerification(ctx echo.Context) error

func (*Auth) ResetPasswordPage

func (h *Auth) ResetPasswordPage(ctx echo.Context) error

func (*Auth) ResetPasswordSubmit

func (h *Auth) ResetPasswordSubmit(ctx echo.Context) error

func (*Auth) Routes

func (h *Auth) Routes(g *echo.Group)

func (*Auth) VerificationNotice

func (h *Auth) VerificationNotice(ctx echo.Context) error

func (*Auth) VerifyEmail

func (h *Auth) VerifyEmail(ctx echo.Context) error

type ButtonMessage

type ButtonMessage struct {
	Text    string `json:"text"`
	Payload string `json:"payload"`
}

type Cache

type Cache struct {
	// contains filtered or unexported fields
}

func (*Cache) Init

func (h *Cache) Init(c *services.Container) error

func (*Cache) Page

func (h *Cache) Page(ctx echo.Context) error

func (*Cache) Routes

func (h *Cache) Routes(g *echo.Group)

func (*Cache) Submit

func (h *Cache) Submit(ctx echo.Context) error

type CacheManagement

type CacheManagement struct {
	// contains filtered or unexported fields
}

func (*CacheManagement) ClearCache

func (h *CacheManagement) ClearCache(ctx echo.Context) error

func (*CacheManagement) ClearCachePattern

func (h *CacheManagement) ClearCachePattern(ctx echo.Context) error

func (*CacheManagement) Init

func (*CacheManagement) Page

func (h *CacheManagement) Page(ctx echo.Context) error

func (*CacheManagement) Routes

func (h *CacheManagement) Routes(g *echo.Group)

type Contact

type Contact struct {
	// contains filtered or unexported fields
}

func (*Contact) Init

func (h *Contact) Init(c *services.Container) error

func (*Contact) Page

func (h *Contact) Page(ctx echo.Context) error

func (*Contact) Routes

func (h *Contact) Routes(g *echo.Group)

func (*Contact) Submit

func (h *Contact) Submit(ctx echo.Context) error

type Documents

type Documents struct {
	// contains filtered or unexported fields
}

func (*Documents) DeleteDocument

func (h *Documents) DeleteDocument(ctx echo.Context) error

DeleteDocument handles document deletion

func (*Documents) Init

func (h *Documents) Init(c *services.Container) error

func (*Documents) ListDocuments

func (h *Documents) ListDocuments(ctx echo.Context) error

ListDocuments displays all documents

func (*Documents) Routes

func (h *Documents) Routes(g *echo.Group)

func (*Documents) UploadDocumentsPage

func (h *Documents) UploadDocumentsPage(ctx echo.Context) error

UploadDocumentsPage displays the document upload form

func (*Documents) UploadDocumentsSubmit

func (h *Documents) UploadDocumentsSubmit(ctx echo.Context) error

UploadDocumentsSubmit handles document upload

func (*Documents) ViewDocument

func (h *Documents) ViewDocument(ctx echo.Context) error

ViewDocument displays a specific document

type Error

type Error struct{}

func (*Error) Page

func (e *Error) Page(err error, ctx echo.Context)

type Files

type Files struct {
	// contains filtered or unexported fields
}

func (*Files) Init

func (h *Files) Init(c *services.Container) error

func (*Files) Page

func (h *Files) Page(ctx echo.Context) error

func (*Files) Routes

func (h *Files) Routes(g *echo.Group)

func (*Files) Submit

func (h *Files) Submit(ctx echo.Context) error

type Handler

type Handler interface {
	// Routes allows for self-registration of HTTP routes on the router
	Routes(g *echo.Group)

	// Init provides the service container to initialize
	Init(*services.Container) error
}

Handler handles one or more HTTP routes

func GetHandlers

func GetHandlers() []Handler

GetHandlers returns all handlers

type Message

type Message struct {
	From      string         `json:"from"`
	ID        string         `json:"id"`
	Timestamp string         `json:"timestamp"`
	Type      string         `json:"type"`
	Text      *TextMessage   `json:"text,omitempty"`
	Button    *ButtonMessage `json:"button,omitempty"`
}

type Notes

type Notes struct {
	// contains filtered or unexported fields
}

func (*Notes) CreateNotePage

func (h *Notes) CreateNotePage(ctx echo.Context) error

CreateNotePage displays the create note form

func (*Notes) CreateNoteSubmit

func (h *Notes) CreateNoteSubmit(ctx echo.Context) error

CreateNoteSubmit handles note creation

func (*Notes) DeleteNote

func (h *Notes) DeleteNote(ctx echo.Context) error

DeleteNote handles note deletion

func (*Notes) EditNotePage

func (h *Notes) EditNotePage(ctx echo.Context) error

EditNotePage displays the edit note form

func (*Notes) EditNoteSubmit

func (h *Notes) EditNoteSubmit(ctx echo.Context) error

EditNoteSubmit handles note editing

func (*Notes) Init

func (h *Notes) Init(c *services.Container) error

func (*Notes) LikeNote

func (h *Notes) LikeNote(ctx echo.Context) error

LikeNote handles liking a note

func (*Notes) ListNotes

func (h *Notes) ListNotes(ctx echo.Context) error

ListNotes displays the user's notes

func (*Notes) RepostNote

func (h *Notes) RepostNote(ctx echo.Context) error

RepostNote handles reposting a note

func (*Notes) Routes

func (h *Notes) Routes(g *echo.Group)

func (*Notes) UnlikeNote

func (h *Notes) UnlikeNote(ctx echo.Context) error

UnlikeNote handles unliking a note

func (*Notes) UnrepostNote

func (h *Notes) UnrepostNote(ctx echo.Context) error

UnrepostNote handles unreposting a note

func (*Notes) ViewNote

func (h *Notes) ViewNote(ctx echo.Context) error

ViewNote displays a specific note

func (*Notes) ViewSharedNote

func (h *Notes) ViewSharedNote(ctx echo.Context) error

ViewSharedNote displays a note via share token

type Pages

type Pages struct {
	// contains filtered or unexported fields
}

func (*Pages) About

func (h *Pages) About(ctx echo.Context) error

func (*Pages) AuthenticatedHome

func (h *Pages) AuthenticatedHome(ctx echo.Context) error

AuthenticatedHome serves the authenticated user's home page

func (*Pages) Dashboard

func (h *Pages) Dashboard(ctx echo.Context) error

func (*Pages) Init

func (h *Pages) Init(c *services.Container) error

func (*Pages) PublicHome

func (h *Pages) PublicHome(ctx echo.Context) error

PublicHome serves the public landing page for non-authenticated users

func (*Pages) QuizzesPage

func (h *Pages) QuizzesPage(ctx echo.Context) error

func (*Pages) Routes

func (h *Pages) Routes(g *echo.Group)

type Profile

type Profile struct {
	// contains filtered or unexported fields
}

func (*Profile) ChangePasswordPage

func (h *Profile) ChangePasswordPage(ctx echo.Context) error

func (*Profile) ChangePasswordSubmit

func (h *Profile) ChangePasswordSubmit(ctx echo.Context) error

func (*Profile) DeactivateAccountPage

func (h *Profile) DeactivateAccountPage(ctx echo.Context) error

func (*Profile) DeactivateAccountSubmit

func (h *Profile) DeactivateAccountSubmit(ctx echo.Context) error

func (*Profile) Init

func (h *Profile) Init(c *services.Container) error

func (*Profile) ProfileEditPage

func (h *Profile) ProfileEditPage(ctx echo.Context) error

func (*Profile) ProfilePage

func (h *Profile) ProfilePage(ctx echo.Context) error

func (*Profile) ProfilePicturePage

func (h *Profile) ProfilePicturePage(ctx echo.Context) error

func (*Profile) ProfilePictureSubmit

func (h *Profile) ProfilePictureSubmit(ctx echo.Context) error

func (*Profile) ProfileUpdate

func (h *Profile) ProfileUpdate(ctx echo.Context) error

func (*Profile) Routes

func (h *Profile) Routes(g *echo.Group)

type Progress

type Progress struct {
	// contains filtered or unexported fields
}

func (*Progress) ExportProgress

func (h *Progress) ExportProgress(ctx echo.Context) error

ExportProgress handles progress report export

func (*Progress) Init

func (h *Progress) Init(c *services.Container) error

func (*Progress) Routes

func (h *Progress) Routes(g *echo.Group)

func (*Progress) ViewAnalytics

func (h *Progress) ViewAnalytics(ctx echo.Context) error

ViewAnalytics displays detailed analytics

func (*Progress) ViewProgress

func (h *Progress) ViewProgress(ctx echo.Context) error

ViewProgress displays the progress dashboard

type Quiz

type Quiz struct {
	// contains filtered or unexported fields
}

func (*Quiz) CreateQuizPage

func (h *Quiz) CreateQuizPage(ctx echo.Context) error

CreateQuizPage displays the quiz creation form

func (*Quiz) CreateQuizSubmit

func (h *Quiz) CreateQuizSubmit(ctx echo.Context) error

CreateQuizSubmit handles quiz creation

func (*Quiz) DeleteQuiz

func (h *Quiz) DeleteQuiz(ctx echo.Context) error

DeleteQuiz handles quiz deletion

func (*Quiz) EditQuizPage

func (h *Quiz) EditQuizPage(ctx echo.Context) error

EditQuizPage displays the quiz edit form

func (*Quiz) EditQuizSubmit

func (h *Quiz) EditQuizSubmit(ctx echo.Context) error

EditQuizSubmit handles quiz updates

func (*Quiz) Init

func (h *Quiz) Init(c *services.Container) error

func (*Quiz) ListQuizzes

func (h *Quiz) ListQuizzes(ctx echo.Context) error

ListQuizzes displays all quizzes

func (*Quiz) Routes

func (h *Quiz) Routes(g *echo.Group)

func (*Quiz) SubmitQuiz

func (h *Quiz) SubmitQuiz(ctx echo.Context) error

SubmitQuiz handles quiz submission

func (*Quiz) TakeQuiz

func (h *Quiz) TakeQuiz(ctx echo.Context) error

TakeQuiz displays the quiz taking interface

func (*Quiz) ViewQuiz

func (h *Quiz) ViewQuiz(ctx echo.Context) error

ViewQuiz displays a specific quiz

type Search struct{}

func (*Search) Init

func (h *Search) Init(c *services.Container) error

func (*Search) Page

func (h *Search) Page(ctx echo.Context) error

func (*Search) Routes

func (h *Search) Routes(g *echo.Group)

type Status

type Status struct {
	ID          string `json:"id"`
	Status      string `json:"status"`
	Timestamp   string `json:"timestamp"`
	RecipientID string `json:"recipient_id"`
}

type StudyGroups

type StudyGroups struct {
	// contains filtered or unexported fields
}

func (*StudyGroups) CreateStudyGroupPage

func (h *StudyGroups) CreateStudyGroupPage(ctx echo.Context) error

CreateStudyGroupPage displays the study group creation form

func (*StudyGroups) CreateStudyGroupSubmit

func (h *StudyGroups) CreateStudyGroupSubmit(ctx echo.Context) error

CreateStudyGroupSubmit handles study group creation

func (*StudyGroups) Init

func (h *StudyGroups) Init(c *services.Container) error

func (*StudyGroups) JoinStudyGroup

func (h *StudyGroups) JoinStudyGroup(ctx echo.Context) error

JoinStudyGroup handles joining a study group

func (*StudyGroups) LeaveStudyGroup

func (h *StudyGroups) LeaveStudyGroup(ctx echo.Context) error

LeaveStudyGroup handles leaving a study group

func (*StudyGroups) ListStudyGroups

func (h *StudyGroups) ListStudyGroups(ctx echo.Context) error

ListStudyGroups displays all study groups

func (*StudyGroups) Routes

func (h *StudyGroups) Routes(g *echo.Group)

func (*StudyGroups) ViewStudyGroup

func (h *StudyGroups) ViewStudyGroup(ctx echo.Context) error

ViewStudyGroup displays a specific study group

type Task

type Task struct {
	// contains filtered or unexported fields
}

func (*Task) Init

func (h *Task) Init(c *services.Container) error

func (*Task) Page

func (h *Task) Page(ctx echo.Context) error

Page renders the task creation page.

func (*Task) Routes

func (h *Task) Routes(g *echo.Group)

func (*Task) Submit

func (h *Task) Submit(ctx echo.Context) error

Submit handles the task creation form submission.

type TextMessage

type TextMessage struct {
	Body string `json:"body"`
}

type WebhookPayload

type WebhookPayload struct {
	Statuses []Status  `json:"statuses,omitempty"`
	Messages []Message `json:"messages,omitempty"`
}

WhatsApp webhook payload structures

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL