public HttpResponseMessage SavePageDetails(PageSettings pageSettings) { if (!_securityService.CanSavePageDetails(pageSettings)) { return(GetForbiddenResponse()); } try { pageSettings.Clean(); var tab = _pagesController.SavePageDetails(pageSettings); var tabs = TabController.GetPortalTabs(PortalSettings.PortalId, Null.NullInteger, false, true, false, true); return(Request.CreateResponse(HttpStatusCode.OK, new { Status = 0, Page = Converters.ConvertToPageItem <PageItem>(tab, tabs) })); } catch (PageNotFoundException) { return(Request.CreateResponse(HttpStatusCode.NotFound, new { Message = "Page doesn't exists." })); } catch (PageValidationException ex) { return(Request.CreateResponse(HttpStatusCode.OK, new { Status = 1, ex.Field, ex.Message })); } }