diff --git a/handlers/handler.cpp b/handlers/handler.cpp index 6fa3cd6..3162a00 100644 --- a/handlers/handler.cpp +++ b/handlers/handler.cpp @@ -34,7 +34,7 @@ void Handler::setGeneralVars(TemplatePage &page) } Response Handler::errorResponse(std::string errortitle, std::string errormessage, int status) { - TemplatePage &error = this->templ->getPage("error"); + TemplatePage error = this->templ->getPage("error"); error.setVar("title", createPageTitle(errortitle)); error.setVar("errortitle", errortitle); error.setVar("errormessage", errormessage); diff --git a/handlers/handlerallcategories.cpp b/handlers/handlerallcategories.cpp index 26a6313..870e12f 100644 --- a/handlers/handlerallcategories.cpp +++ b/handlers/handlerallcategories.cpp @@ -32,7 +32,7 @@ Response HandlerAllCategories::handleRequest(const Request &r) "No categories", "This wiki does not have any categories defined yet or your query options did not yield any results"); } - TemplatePage &searchPage = this->templ->getPage("allcategories"); + TemplatePage searchPage = this->templ->getPage("allcategories"); std::string body = this->templ->renderSearch(resultList, [&](std::string str) { return this->urlProvider->category(str); }); searchPage.setVar("categorylist", body); diff --git a/handlers/handlerallpages.cpp b/handlers/handlerallpages.cpp index d9e1a4a..9362e85 100644 --- a/handlers/handlerallpages.cpp +++ b/handlers/handlerallpages.cpp @@ -32,7 +32,7 @@ Response HandlerAllPages::handleRequest(const Request &r) { return errorResponse("No pages", "This wiki does not have any pages yet"); } - TemplatePage &searchPage = this->templ->getPage("allpages"); + TemplatePage searchPage = this->templ->getPage("allpages"); std::string body = this->templ->renderSearch(resultList); searchPage.setVar("pagelist", body); searchPage.setVar("title", createPageTitle("All pages")); diff --git a/handlers/handlercategory.cpp b/handlers/handlercategory.cpp index 3e52ea9..9b322ab 100644 --- a/handlers/handlercategory.cpp +++ b/handlers/handlercategory.cpp @@ -33,7 +33,7 @@ Response HandlerCategory::handleRequest(const Request &r) } QueryOption qo = queryOption(r); auto resultList = categoryDao->fetchMembers(categoryname, qo); - TemplatePage &searchPage = this->templ->getPage("show_category"); + TemplatePage searchPage = this->templ->getPage("show_category"); std::string body = this->templ->renderSearch(resultList); searchPage.setVar("pagelist", body); searchPage.setVar("categoryname", categoryname); diff --git a/handlers/handlerlogin.cpp b/handlers/handlerlogin.cpp index b34008d..8333c84 100644 --- a/handlers/handlerlogin.cpp +++ b/handlers/handlerlogin.cpp @@ -55,7 +55,7 @@ Response HandlerLogin::handleRequest(const Request &r) { page = "index"; } - TemplatePage &loginTemplatePage = this->templ->getPage("login"); + TemplatePage loginTemplatePage = this->templ->getPage("login"); setGeneralVars(loginTemplatePage); loginTemplatePage.setVar("loginurl", urlProvider->login(page)); loginTemplatePage.setVar("title", createPageTitle("Login")); diff --git a/handlers/handlerpage.cpp b/handlers/handlerpage.cpp index bf3ea53..1c57926 100644 --- a/handlers/handlerpage.cpp +++ b/handlers/handlerpage.cpp @@ -63,8 +63,9 @@ void HandlerPage::setPageVars(TemplatePage &page, std::string pagename) if(!pagename.empty()) { std::string headerlinks; - TemplatePage &headerlink = this->templ->getPage("_headerlink"); - auto addHeaderLink = [&headerlinks, &headerlink](std::string href, std::string value) { + TemplatePage headerlink = this->templ->getPage("_headerlink"); + auto addHeaderLink = [&headerlinks, &headerlink](std::string href, std::string value) + { headerlink.setVar("href", href); headerlink.setVar("value", value); headerlinks += headerlink.render(); diff --git a/handlers/handlerpageedit.cpp b/handlers/handlerpageedit.cpp index 492e36f..b244592 100644 --- a/handlers/handlerpageedit.cpp +++ b/handlers/handlerpageedit.cpp @@ -121,7 +121,7 @@ Response HandlerPageEdit::handleRequest(PageDao &pageDao, std::string pagename, } } - TemplatePage &templatePage = this->templ->getPage("page_creation"); + TemplatePage templatePage = this->templ->getPage("page_creation"); templatePage.setVar("actionurl", urlProvider->editPage(pagename)); templatePage.setVar("content", body); setPageVars(templatePage, pagename); diff --git a/handlers/handlerpageview.cpp b/handlers/handlerpageview.cpp index 1ad121a..ec32d61 100644 --- a/handlers/handlerpageview.cpp +++ b/handlers/handlerpageview.cpp @@ -128,7 +128,7 @@ Response HandlerPageView::handleRequest(PageDao &pageDao, std::string pagename, return errorResponse("Database error", "While trying to fetch revision, a database error occured"); } - TemplatePage &page = this->templ->getPage(templatepartname); + TemplatePage page = this->templ->getPage(templatepartname); Parser parser; Response result; diff --git a/handlers/handlersearch.cpp b/handlers/handlersearch.cpp index 25655f4..7f69e32 100644 --- a/handlers/handlersearch.cpp +++ b/handlers/handlersearch.cpp @@ -37,7 +37,7 @@ Response HandlerSearch::handleRequest(const Request &r) { return errorResponse("No results", "Your search for " + q + " did not yield any results."); } - TemplatePage &searchPage = this->templ->getPage("search"); + TemplatePage searchPage = this->templ->getPage("search"); std::string body = this->templ->renderSearch(resultList); searchPage.setVar("pagelist", body); searchPage.setVar("searchterm", q); diff --git a/handlers/handlerusersettings.cpp b/handlers/handlerusersettings.cpp index 6957c23..77b4a9f 100644 --- a/handlers/handlerusersettings.cpp +++ b/handlers/handlerusersettings.cpp @@ -51,7 +51,7 @@ Response HandlerUserSettings::handleRequest(const Request &r) } } - TemplatePage &userSettingsPage = this->templ->getPage("usersettings"); + TemplatePage userSettingsPage = this->templ->getPage("usersettings"); setGeneralVars(userSettingsPage); userSettingsPage.setVar("usersettingsurl", urlProvider->userSettings()); userSettingsPage.setVar("title", createPageTitle("User settings - " + this->userSession->user.login)); diff --git a/requestworker.cpp b/requestworker.cpp index 75f91c9..35c6876 100644 --- a/requestworker.cpp +++ b/requestworker.cpp @@ -59,7 +59,7 @@ Response RequestWorker::processRequest(const Request &r) if(session.loggedIn && session.csrf_token != r.post("csrf_token")) { // TODO: this is code duplication - TemplatePage &error = this->templ->getPage("error"); + TemplatePage error = this->templ->getPage("error"); error.setVar("errortitle", "Invalid csrf token"); error.setVar("errormessage", "Invalid csrf token"); return {403, error.render()};