annotate server/main_sender.cpp @ 0:a4671277546c tip

created the repository for the thymian project
author ferencd
date Tue, 17 Aug 2021 11:19:54 +0200
parents
children
rev   line source
ferencd@0 1 #include "main_sender.h"
ferencd@0 2 #include <templater.h>
ferencd@0 3 #include <log.h>
ferencd@0 4 #include <unistd.h>
ferencd@0 5 #include <fstream>
ferencd@0 6
ferencd@0 7 main_sender::main_sender(tnt::HttpRequest& request, tnt::HttpReply& reply, const std::string& what)
ferencd@0 8 : web_component(request, reply, "")
ferencd@0 9 {
ferencd@0 10 std::string targetLanguage = what.substr(1);
ferencd@0 11
ferencd@0 12 prepareLanguages();
ferencd@0 13 template_vector_par tvp_languages("languages", m_languageStructs);
ferencd@0 14
ferencd@0 15
ferencd@0 16 auto t = translator<mainpage>();
ferencd@0 17 m_translated = t.templatize(tvp_languages).set().translate(targetLanguage);
ferencd@0 18 auto translations = t.get_translations();
ferencd@0 19
ferencd@0 20 stringholder sh(m_translated);
ferencd@0 21 sh.replace_all("{#jsfun}", prepareLangJs(translations));
ferencd@0 22 sh.replace_all("{#divChanger}", "changeDivs('" + targetLanguage + "');");
ferencd@0 23 m_translated = sh.get();
ferencd@0 24
ferencd@0 25 }
ferencd@0 26
ferencd@0 27 unsigned main_sender::send()
ferencd@0 28 {
ferencd@0 29 mreply.out() << m_translated;
ferencd@0 30 return HTTP_OK;
ferencd@0 31 }