コード例 #1
0
        public async Task <IActionResult> Create(ContentTypeCreateGet ContentType)
        {
            var CurrentUser = await _userManager.GetUserAsync(User);

            ContentType.UserId = CurrentUser.Id;
            var ErrorMessages = new List <ErrorMessage>();

            if (await _claimCheck.CheckClaim(CurrentUser, "ApplicationRight", this.ControllerContext.RouteData.Values["controller"].ToString() + "\\" + this.ControllerContext.RouteData.Values["action"].ToString()))
            {
                ErrorMessages = await _contentTypeProvider.CreatePostCheck(ContentType);

                if (ErrorMessages.Count > 0)
                {
                    ContentType = await CreateAddDropDownBoxes(ContentType, CurrentUser.Id);
                }
                else
                {
                    _contentTypeProvider.CreatePost(ContentType);
                }
                ContentTypeCreateGetWithErrorMessages ContentTypeWithErrorMessage = new ContentTypeCreateGetWithErrorMessages {
                    ContentType = ContentType, ErrorMessages = ErrorMessages
                };
                return(Ok(ContentTypeWithErrorMessage));
            }
            ErrorMessages = await _checkProvider.NoRightsMessage(CurrentUser.Id);

            ContentTypeCreateGetWithErrorMessages ContentTypeWithNoRights = new ContentTypeCreateGetWithErrorMessages {
                ContentType = ContentType, ErrorMessages = ErrorMessages
            };

            return(Ok(ContentTypeWithNoRights));
        }