Documentation
¶
Index ¶
- func CreateCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func DeleteCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func DetrashCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetCategories(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetCategoriesStats(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetPublicCategories(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetPublicCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func GetPublicCategoryPosts(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func TrashCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
- func UpdateCategory(maxCtxDuration time.Duration, svc *service.Service) (handler gin.HandlerFunc)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateCategory ¶
func CreateCategory( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Editor) @Summary Create Category @Description Create a new category. @Router /v1/auth/editor/category [post] @Security BearerAuth @Accept application/json @Accept application/msgpack @Produce application/json @Produce application/msgpack @Param form body object{slug=string,name=string} true "Create category form" @Success 200 {object} object{data=object{uid=string,slug=string,name=string,updatedAt=time,createdAt=time}} @Failure 401 {object} object{message=string} @Failure 422 {object} object{message=string} @Failure 500 {object} object{message=string}
func DeleteCategory ¶
func DeleteCategory( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Editor) @Summary Delete Category (Permanent) @Description Delete a category (permanent). @Router /v1/auth/editor/category/{uid}/permanent [delete] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 204 @Failure 401 {object} object{message=string} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func DetrashCategory ¶
func DetrashCategory( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Editor) @Summary Detrash Category @Description Restore a deleted category (soft-deleted). @Router /v1/auth/editor/category/{uid}/detrash [put] @Router /v1/auth/editor/category/{uid}/detrash [patch] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 204 @Failure 401 {object} object{message=string} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func GetCategories ¶
@Tags Category (Editor) @Summary Get Categories @Description Get categories. @Router /v1/auth/editor/categories [get] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param show query int false "Number of data to be shown." @Param page query int false "Selected page of data." @Param order query string false "Selected field to order data with." @Param asc query boolean false "Ascending or descending." @Param type query string false "Filter data by type, e.g.: ?type=trash." @Success 200 {object} object{data=[]object{uid=string,slug=string,name=string,updatedAt=time,createdAt=time}} @Success 204 @Failure 401 {object} object{message=string} @Failure 500 {object} object{message=string}
func GetCategoriesStats ¶
func GetCategoriesStats( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Editor) @Summary Get Categories Stats @Description Get categories's stats. @Router /v1/auth/editor/categories/stats [get] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param show query int false "Number of data to be shown." @Param page query int false "Selected page of data." @Param order query string false "Selected field to order data with." @Param asc query boolean false "Ascending or descending." @Param type query string false "Filter data by type, e.g.: ?type=trash." @Success 200 {object} object{data=object{currentPage=int,totalPages=int,itemsPerPage=int,totalItems=int}} @Failure 401 {object} object{message=string} @Failure 500 {object} object{message=string}
func GetCategory ¶
@Tags Category (Editor) @Summary Get Category @Description Get category. @Router /v1/auth/editor/category/{uid} [get] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 200 {object} object{data=object{uid=string,slug=string,name=string,updatedAt=time,createdAt=time}} @Failure 401 {object} object{message=string} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func GetPublicCategories ¶
func GetPublicCategories( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Public) @Summary Get Categories @Description Get categories. @Router /v1/categories [get] @Produce application/json @Produce application/msgpack @Success 200 {object} object{data=[]object{uid=string,slug=string,name=string}} @Param show query int false "Number of data to be shown." @Param page query int false "Selected page of data." @Param order query string false "Selected field to order data with." @Param asc query boolean false "Ascending or descending." @Failure 204 @Failure 500 {object} object{message=string}
func GetPublicCategory ¶
func GetPublicCategory( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Public) @Summary Get Category @Description Get category. @Router /v1/category/{uid} [get] @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 200 {object} object{data=object{uid=string,slug=string,name=string}} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func GetPublicCategoryPosts ¶
func GetPublicCategoryPosts( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Public) @Summary Get Public Category Posts @Description Get public category's posts that available publicly. @Router /v1/category/{uid}/posts [get] @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 200 {object} object{data=object{uid=string,slug=string,title=string,featuringImagePath=string,description=string,categories=[]object{uid=string,slug=string,name=string},tags=[]string,content=string,author=object{uid=string,username=string,email=string,firstName=string,lastName=string},commentCount=int,publishedAt=time}} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func TrashCategory ¶
@Tags Category (Editor) @Summary Delete Category (Soft) @Description Delete a category (soft-deleted). @Router /v1/auth/editor/category/{uid} [delete] @Security BearerAuth @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Success 204 @Failure 401 {object} object{message=string} @Failure 404 {object} object{message=string} @Failure 500 {object} object{message=string}
func UpdateCategory ¶
func UpdateCategory( maxCtxDuration time.Duration, svc *service.Service, ) (handler gin.HandlerFunc)
@Tags Category (Editor) @Summary Update Category @Description Update a category. @Router /v1/auth/editor/category/{uid} [put] @Router /v1/auth/editor/category/{uid} [patch] @Security BearerAuth @Accept application/json @Accept application/msgpack @Produce application/json @Produce application/msgpack @Param uid path string true "Category's UID or slug" @Param form body object{slug=string,name=string} true "Create category form" @Success 204 @Failure 401 {object} object{message=string} @Failure 404 {object} object{message=string} @Failure 422 {object} object{message=string} @Failure 500 {object} object{message=string}
Types ¶
This section is empty.