예제 #1
0
        public IActionResult setAppState([FromBody] AppStateSetting appState)
        {
            var claimsIdentity = this.User.Identity as ClaimsIdentity;
            var userName       = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;

            if (userName == null)
            {
                return(BadRequest(new { message = "Błąd autoryzacji" }));
            }
            int userId          = int.Parse(userName);
            int userPermissions = userService.GetUserPermissionLevel(userId);

            if (userPermissions != 1 && userPermissions != 2)
            {
                return(Unauthorized());
            }

            if (!Enum.IsDefined(typeof(AppStates), appState.appState))

            {
                return(BadRequest(new { message = "Błędny kod stanu" }));
            }

            string jsonObject = JsonConvert.SerializeObject(appState);

            var response = appSettingsService.setAppState(jsonObject);

            if (response == null)
            {
                return(BadRequest(new { message = "Błąd edycji tytułu!" }));
            }
            return(Ok());
        }