本文整理匯總了Golang中github.com/ovh/tat/models.Topic.SetParam方法的典型用法代碼示例。如果您正苦於以下問題:Golang Topic.SetParam方法的具體用法?Golang Topic.SetParam怎麽用?Golang Topic.SetParam使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/ovh/tat/models.Topic
的用法示例。
在下文中一共展示了Topic.SetParam方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: SetParam
// SetParam update Topic Parameters : MaxLength, CanForeceDate, CanUpdateMsg, CanDeleteMsg, CanUpdateAllMsg, CanDeleteAllMsg, IsROPublic
// admin only, except on Private topic
func (t *TopicsController) SetParam(ctx *gin.Context) {
var paramJSON paramJSON
ctx.Bind(¶mJSON)
topic := models.Topic{}
var err error
if strings.HasPrefix(paramJSON.Topic, "/Private/"+utils.GetCtxUsername(ctx)) {
err := topic.FindByTopic(paramJSON.Topic, false)
if err != nil {
ctx.JSON(http.StatusInternalServerError, gin.H{"error": "Error while fetching topic /Private/" + utils.GetCtxUsername(ctx)})
return
}
} else {
topic, err = t.preCheckUserAdminOnTopic(ctx, paramJSON.Topic)
if err != nil {
ctx.JSON(http.StatusInternalServerError, err)
return
}
}
err = topic.SetParam(utils.GetCtxUsername(ctx),
paramJSON.Recursive,
paramJSON.MaxLength,
paramJSON.CanForceDate,
paramJSON.CanUpdateMsg,
paramJSON.CanDeleteMsg,
paramJSON.CanUpdateAllMsg,
paramJSON.CanDeleteAllMsg,
paramJSON.IsROPublic)
if err != nil {
ctx.AbortWithError(http.StatusInternalServerError, errors.New(err.Error()))
return
}
ctx.JSON(http.StatusCreated, "")
}