Bloom.Api.CurrentBookHandler.HandleBookSettings C# (CSharp) Method

HandleBookSettings() private method

Get a json of the book's settings.
private HandleBookSettings ( ApiRequest request ) : void
request ApiRequest
return void
        private void HandleBookSettings(ApiRequest request)
        {
            switch (request.HttpMethod)
            {
                case HttpMethods.Get:
                    dynamic settings = new ExpandoObject();
                    settings.isRecordedAsLockedDown = _bookSelection.CurrentSelection.RecordedAsLockedDown;
                    settings.unlockShellBook = _bookSelection.CurrentSelection.TemporarilyUnlocked;
                    settings.currentToolBoxTool = _bookSelection.CurrentSelection.BookInfo.CurrentTool;
                    request.ReplyWithJson((object)settings);
                    break;
                case HttpMethods.Post:
                    //note: since we only have this one value, it's not clear yet whether the panel involved here will be more of a
                    //an "edit settings", or a "book settings", or a combination of them.
                    settings = DynamicJson.Parse(request.RequiredPostJson());
                    _bookSelection.CurrentSelection.TemporarilyUnlocked = settings["unlockShellBook"];
                    _pageRefreshEvent.Raise(PageRefreshEvent.SaveBehavior.SaveBeforeRefresh);
                    request.Succeeded();
                    break;
                default:
                    throw new ArgumentOutOfRangeException();
            }
        }