diff --git a/dynamic/dynamiccontentincludepage.cpp b/dynamic/dynamiccontentincludepage.cpp index 52e1ac4..adc5729 100644 --- a/dynamic/dynamiccontentincludepage.cpp +++ b/dynamic/dynamiccontentincludepage.cpp @@ -6,9 +6,7 @@ std::string DynamicContentIncludePage::render() auto rev = revisionDao->getCurrentForPage(this->argument); if(rev) { - Parser parser; - auto result = parser.parse(*this->database->createPageDao(), *this->urlProvider, rev->content); - return result; + return rev->content; } return {}; } diff --git a/handlers/handlerpageview.cpp b/handlers/handlerpageview.cpp index 3599c69..98411b2 100644 --- a/handlers/handlerpageview.cpp +++ b/handlers/handlerpageview.cpp @@ -137,6 +137,8 @@ Response HandlerPageView::handleRequest(PageDao &pageDao, std::string pagename, std::string indexcontent; std::string parsedcontent; + bool keepParsing = true; + std::function dynamicParseCallback = [&](std::string_view key, std::string_view value) -> std::string { @@ -150,7 +152,7 @@ Response HandlerPageView::handleRequest(PageDao &pageDao, std::string pagename, { std::shared_ptr includePage = createDynamic(); includePage->setArgument(std::string(value)); - return includePage->render(); + return parser.parse(pageDao, *this->urlProvider, includePage->render(), dynamicParseCallback); } return std::string{}; };