Passed
Pull Request — main (#71)
by Yume
01:16
created

app/routes/deckRoutes.go   A

Size/Duplication

Total Lines 98
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 61
dl 0
loc 98
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B routes.registerDeckRoutes 0 91 1
1
package routes
2
3
import (
4
	"github.com/memnix/memnixrest/app/controllers"
5
	"github.com/memnix/memnixrest/pkg/models"
6
)
7
8
func registerDeckRoutes() {
9
10
	// Admin only
11
	routesMap["/decks"] = routeStruct{
12
		Method:     "GET",
13
		Handler:    controllers.GetAllDecks,
14
		Permission: models.PermAdmin,
15
	}
16
17
	// Get routes
18
	routesMap["/decks/public"] = routeStruct{
19
		Method:     "GET",
20
		Handler:    controllers.GetAllPublicDecks,
21
		Permission: models.PermUser,
22
	}
23
24
	routesMap["/decks/available"] = routeStruct{
25
		Method:     "GET",
26
		Handler:    controllers.GetAllAvailableDecks,
27
		Permission: models.PermUser,
28
	}
29
30
	// Get all editor decks
31
	routesMap["/decks/editor"] = routeStruct{
32
		Method:     "GET",
33
		Handler:    controllers.GetAllEditorDecks,
34
		Permission: models.PermUser,
35
	}
36
37
	// Get all decks the user is sub to
38
	routesMap["/decks/sub"] = routeStruct{
39
		Method:     "GET",
40
		Handler:    controllers.GetAllSubDecks,
41
		Permission: models.PermUser,
42
	}
43
44
	routesMap["/decks/:deckID"] = routeStruct{
45
		Method:     "GET",
46
		Handler:    controllers.GetDeckByID,
47
		Permission: models.PermUser,
48
	}
49
50
	routesMap["/decks/:deckID/users"] = routeStruct{
51
		Method:     "GET",
52
		Handler:    controllers.GetAllSubUsers,
53
		Permission: models.PermUser,
54
	}
55
56
	// Post
57
	routesMap["/decks/new"] = routeStruct{
58
		Method:     "POST",
59
		Handler:    controllers.CreateNewDeck,
60
		Permission: models.PermUser,
61
	}
62
63
	routesMap["/decks/:deckID/subscribe"] = routeStruct{
64
		Method:     "POST",
65
		Handler:    controllers.SubToDeck,
66
		Permission: models.PermUser,
67
	}
68
69
	routesMap["/decks/:deckID/unsubscribe"] = routeStruct{
70
		Method:     "POST",
71
		Handler:    controllers.UnSubToDeck,
72
		Permission: models.PermUser,
73
	}
74
75
	routesMap["/decks/private/:key/:code/subscribe"] = routeStruct{
76
		Method:     "POST",
77
		Handler:    controllers.SubToPrivateDeck,
78
		Permission: models.PermUser,
79
	}
80
81
	routesMap["/decks/:deckID/publish"] = routeStruct{
82
		Method:     "POST",
83
		Handler:    controllers.PublishDeckRequest,
84
		Permission: models.PermUser,
85
	}
86
87
	// Put
88
	routesMap["/decks/:deckID/edit"] = routeStruct{
89
		Method:     "PUT",
90
		Handler:    controllers.UpdateDeckByID,
91
		Permission: models.PermUser,
92
	}
93
94
	// Delete
95
	routesMap["/decks/:deckID"] = routeStruct{
96
		Method:     "DELETE",
97
		Handler:    controllers.DeleteDeckById,
98
		Permission: models.PermUser,
99
	}
100
}
101