@@ -179,45 +179,45 @@ func (s *Server) setupRoutes() {
179179 protected .GET ("/clubs/:id/poll" , postHandler .GetPollPostsByClubID )
180180
181181 protected .POST ("/clubs/:id/join" , clubHandler .JoinClub )
182- protected .POST ("/clubs/:id/leave" , middleware .RequireClubMembership (clubRepo ), clubHandler .LeaveClub )
183- protected .POST ("/clubs/:id/ratings" , middleware .RequireClubMembership (clubRepo ), clubHandler .RateClub )
182+ protected .POST ("/clubs/:id/leave" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), clubHandler .LeaveClub )
183+ protected .POST ("/clubs/:id/ratings" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), clubHandler .RateClub )
184184 protected .GET ("/my-clubs" , clubHandler .GetMyClubs )
185185
186186 protected .PUT ("/clubs/:id/members/:user_id" , middleware .RequireClubMembershipWithRoles (clubRepo , "club_admin" , "moderator" ), clubHandler .UpdateClubMember )
187187 protected .GET ("/clubs/:id/members/:user_id" , clubHandler .GetClubMember )
188188
189189 protected .POST ("/clubs/:id/events" , middleware .RequireClubMembershipWithRoles (clubRepo , "club_admin" , "moderator" ), eventHandler .CreateEvent )
190- protected .GET ("/clubs/:id/events" , middleware .RequireClubMembership (clubRepo ), eventHandler .GetClubEvents )
191- protected .GET ("/events/:id" , middleware .RequireClubMembership (clubRepo ), eventHandler .GetEvent )
190+ protected .GET ("/clubs/:id/events" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), eventHandler .GetClubEvents )
191+ protected .GET ("/events/:id" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), eventHandler .GetEvent )
192192 protected .PUT ("/events/:id" , middleware .RequireClubMembershipWithRoles (clubRepo , "club_admin" , "moderator" ), eventHandler .UpdateEvent )
193193 protected .DELETE ("/events/:id" , middleware .RequireClubMembershipWithRoles (clubRepo , "club_admin" , "moderator" ), eventHandler .DeleteEvent )
194194
195- protected .POST ("/events/:id/rsvp" , middleware .RequireClubMembership (clubRepo ), eventHandler .RSVPToEvent )
196- protected .GET ("/events/:id/attendees" , middleware .RequireClubMembership (clubRepo ), eventHandler .GetEventAttendees )
195+ protected .POST ("/events/:id/rsvp" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), eventHandler .RSVPToEvent )
196+ protected .GET ("/events/:id/attendees" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), eventHandler .GetEventAttendees )
197197
198198 protected .POST ("/books" , middleware .RestrictToRoles ("admin" , "superuser" ), bookHandler .CreateBook )
199199 protected .PUT ("/books/:id" , middleware .RestrictToRoles ("admin" , "superuser" ), bookHandler .UpdateBook )
200200 protected .DELETE ("/books/:id" , middleware .RestrictToRoles ("admin" , "superuser" ), bookHandler .DeleteBook )
201201
202- protected .POST ("/posts" , middleware .RequireClubMembership (clubRepo ), postHandler .CreatePost )
203- protected .PUT ("/posts/:id" , middleware .RequireClubMembership (clubRepo ), postHandler .UpdatePost )
204- protected .DELETE ("/posts/:id" , middleware .RequireClubMembership (clubRepo ), postHandler .DeletePost )
205- protected .GET ("/posts/reviews" , middleware .RequireClubMembership (clubRepo ), postHandler .GetReviewsByBook )
206- protected .GET ("/posts/filter" , middleware .RequireClubMembership (clubRepo ), postHandler .GetPostsByType )
202+ protected .POST ("/posts" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .CreatePost )
203+ protected .PUT ("/posts/:id" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .UpdatePost )
204+ protected .DELETE ("/posts/:id" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .DeletePost )
205+ protected .GET ("/posts/reviews" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .GetReviewsByBook )
206+ protected .GET ("/posts/filter" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .GetPostsByType )
207207
208- protected .POST ("/posts/:id/vote" , middleware .RequireClubMembership (clubRepo ), postHandler .VoteOnPoll )
209- protected .POST ("/posts/:id/unvote" , middleware .RequireClubMembership (clubRepo ), postHandler .RemoveVoteFromPoll )
210- protected .GET ("/posts/:id/poll/votes" , middleware .RequireClubMembership (clubRepo ), postHandler .GetUserPollVotes )
208+ protected .POST ("/posts/:id/vote" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .VoteOnPoll )
209+ protected .POST ("/posts/:id/unvote" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .RemoveVoteFromPoll )
210+ protected .GET ("/posts/:id/poll/votes" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .GetUserPollVotes )
211211
212- protected .POST ("/posts/:id/like" , middleware .RequireClubMembership (clubRepo ), postHandler .LikePost )
213- protected .POST ("/posts/:id/unlike" , middleware .RequireClubMembership (clubRepo ), postHandler .UnlikePost )
212+ protected .POST ("/posts/:id/like" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .LikePost )
213+ protected .POST ("/posts/:id/unlike" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), postHandler .UnlikePost )
214214
215- protected .POST ("/posts/:id/comments" , middleware .RequireClubMembership (clubRepo ), commentHandler .CreateComment )
216- protected .PUT ("/comments/:id" , middleware .RequireClubMembership (clubRepo ), commentHandler .UpdateComment )
217- protected .DELETE ("/comments/:id" , middleware .RequireClubMembership (clubRepo ), commentHandler .DeleteComment )
215+ protected .POST ("/posts/:id/comments" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), commentHandler .CreateComment )
216+ protected .PUT ("/comments/:id" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), commentHandler .UpdateComment )
217+ protected .DELETE ("/comments/:id" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), commentHandler .DeleteComment )
218218
219- protected .POST ("/comments/:id/like" , middleware .RequireClubMembership (clubRepo ), commentHandler .LikeComment )
220- protected .POST ("/comments/:id/unlike" , middleware .RequireClubMembership (clubRepo ), commentHandler .UnlikeComment )
219+ protected .POST ("/comments/:id/like" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), commentHandler .LikeComment )
220+ protected .POST ("/comments/:id/unlike" , middleware .RequireClubMembership (clubRepo , postRepo , commentRepo ), commentHandler .UnlikeComment )
221221
222222 protected .POST ("/users/:id/reading/sync" , middleware .AuthorizeSelf (), readingHandler .SyncUserStats )
223223 protected .POST ("/users/:id/reading/start" , middleware .AuthorizeSelf (), readingHandler .StartReading )
0 commit comments