ferencd@0: #ifndef WEB_COMPONENT_H ferencd@0: #define WEB_COMPONENT_H ferencd@0: ferencd@0: #include ferencd@0: #include ferencd@0: #include ferencd@0: ferencd@0: #include "template_struct.h" ferencd@0: ferencd@0: static const std::string RECIPES_ROOT = "/recipes/"; ferencd@0: static const std::string path = "/theme/current/"; ferencd@0: static std::map ctg_to_name = { {"0", "Soups"}, {"2", "Side Dishes"}, {"3", "Main Courses"}, {"4", "Sweets"}, {"1", "Appetizers"} }; ferencd@0: ferencd@0: class web_component ferencd@0: { ferencd@0: public: ferencd@0: ferencd@0: // generic not found page ferencd@0: static const std::string WEB_NOT_FOUND; ferencd@0: ferencd@0: web_component(tnt::HttpRequest& request, tnt::HttpReply& reply, const std::string& sessionId); ferencd@0: virtual ~web_component() = default; ferencd@0: ferencd@0: virtual unsigned send() = 0; ferencd@0: ferencd@0: static tnt::MimeDb mimeDb; ferencd@0: ferencd@0: std::string prepareLangJs(const std::map > &translations); ferencd@0: ferencd@0: protected: ferencd@0: ferencd@0: void prepareLanguages(); ferencd@0: ferencd@0: tnt::HttpRequest& mrequest; ferencd@0: tnt::HttpReply& mreply; ferencd@0: ferencd@0: std::string m_sessionId; ferencd@0: std::string m_originatingIp; ferencd@0: ferencd@0: std::vector m_languageStructs; ferencd@0: ferencd@0: }; ferencd@0: ferencd@0: #endif // WEB_COMPONENT_H