mirror of https://github.com/kiwix/libkiwix.git
Enter HTTP404HtmlResponse
This commit is contained in:
parent
668063205c
commit
89785a259a
|
@ -676,7 +676,7 @@ std::unique_ptr<Response> InternalServer::handle_catalog(const RequestContext& r
|
|||
host = request.get_header("Host");
|
||||
url = request.get_url_part(1);
|
||||
} catch (const std::out_of_range&) {
|
||||
return make404Response(*this, request)
|
||||
return HTTP404HtmlResponse(*this, request)
|
||||
+ urlNotFoundMsg;
|
||||
}
|
||||
|
||||
|
@ -685,7 +685,7 @@ std::unique_ptr<Response> InternalServer::handle_catalog(const RequestContext& r
|
|||
}
|
||||
|
||||
if (url != "searchdescription.xml" && url != "root.xml" && url != "search") {
|
||||
return make404Response(*this, request)
|
||||
return HTTP404HtmlResponse(*this, request)
|
||||
+ urlNotFoundMsg;
|
||||
}
|
||||
|
||||
|
|
|
@ -109,17 +109,16 @@ std::unique_ptr<ContentResponse> Response::build_404(const InternalServer& serve
|
|||
return response;
|
||||
}
|
||||
|
||||
ContentResponseBlueprint make404Response(const InternalServer& server,
|
||||
HTTP404HtmlResponse::HTTP404HtmlResponse(const InternalServer& server,
|
||||
const RequestContext& request)
|
||||
: ContentResponseBlueprint(&server,
|
||||
&request,
|
||||
MHD_HTTP_NOT_FOUND,
|
||||
"text/html",
|
||||
RESOURCE::templates::_404_html)
|
||||
{
|
||||
auto crb = ContentResponseBlueprint(&server,
|
||||
&request,
|
||||
MHD_HTTP_NOT_FOUND,
|
||||
"text/html",
|
||||
RESOURCE::templates::_404_html);
|
||||
|
||||
kainjow::mustache::list emptyList;
|
||||
return crb + kainjow::mustache::object{{"details", emptyList}};
|
||||
this->m_data = kainjow::mustache::object{{"details", emptyList}};
|
||||
}
|
||||
|
||||
std::unique_ptr<Response> Response::build_416(const InternalServer& server, size_t resourceLength)
|
||||
|
|
|
@ -175,12 +175,11 @@ public: //data
|
|||
kainjow::mustache::data m_data;
|
||||
};
|
||||
|
||||
ContentResponseBlueprint make404Response(const InternalServer& server,
|
||||
const RequestContext& request);
|
||||
|
||||
kainjow::mustache::data make404ResponseData(const std::string& url,
|
||||
const std::string& details = "");
|
||||
|
||||
struct HTTP404HtmlResponse : ContentResponseBlueprint
|
||||
{
|
||||
HTTP404HtmlResponse(const InternalServer& server,
|
||||
const RequestContext& request);
|
||||
};
|
||||
|
||||
class ItemResponse : public Response {
|
||||
public:
|
||||
|
|
Loading…
Reference in New Issue