/// <returns>A task that represents the asynchronous operation</returns>
        public virtual async Task <IActionResult> TopicTemplateAdd(TopicTemplateModel model)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageMaintenance))
            {
                return(AccessDeniedView());
            }

            if (!ModelState.IsValid)
            {
                return(ErrorJson(ModelState.SerializeErrors()));
            }

            var template = new TopicTemplate();

            template = model.ToEntity(template);
            await _topicTemplateService.InsertTopicTemplateAsync(template);

            return(Json(new { Result = true }));
        }