aboutsummaryrefslogtreecommitdiff
path: root/router/routes.go
blob: 9d8c4fdcba0f189d1ed11019f8779df6a72d85da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package router

import (
	"imageboard/controllers"

	"github.com/gofiber/fiber/v2"
)

func Initialize(router *fiber.App) {
	router.Static("/static", "./static")

	main := router.Group("/")
	main.Get("/", controllers.HomePageController)

	posts := router.Group("/posts")
	posts.Get("/", controllers.PostsPageController)
	posts.Get("/new", controllers.PostsUploadPageController)
	posts.Post("/new", controllers.PostsUploadPostController)
	posts.Get("/new/ilinkfetch", controllers.PostsUploadImageLinkProxyController)
	posts.Get("/:id", controllers.PostsSinglePostPageController)
	posts.Post("/:id/favourite", controllers.PostsSinglePostFavouriteController)
	posts.Get("/:id/edit", controllers.PostsSinglePostEditController)

	login := router.Group("/login")
	login.Get("/", controllers.LoginPageController)
	login.Post("/", controllers.LoginPostController)

	logout := router.Group("/logout")
	logout.Get("/", controllers.LogoutController)

	register := router.Group("/register")
	register.Get("/", controllers.RegisterPageController)
	register.Post("/", controllers.RegisterPostController)

	account := router.Group("/account")
	account.Get("/verify", controllers.VerifyEmailController)

	preferences := router.Group("/preferences")
	preferences.Get("/", controllers.PreferencesPageController)

	router.Use(controllers.NotFoundController)
}