aboutsummaryrefslogtreecommitdiffstats
path: root/src/GetEssen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/GetEssen.cpp')
-rw-r--r--src/GetEssen.cpp24
1 files changed, 19 insertions, 5 deletions
diff --git a/src/GetEssen.cpp b/src/GetEssen.cpp
index 69a8e5e..44dae59 100644
--- a/src/GetEssen.cpp
+++ b/src/GetEssen.cpp
@@ -6,8 +6,15 @@
using std::string;
bool
-Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const string &message) {
+Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime &mensaDatum, const std::vector<crow::json::wvalue> &message) {
sqdb::Db db("../main.sqlite");
+
+ std::string messageFromJSON;
+ for (auto &mes : message){
+ messageFromJSON.append(mes.keys().at(0));
+ }
+
+
string newTime = to_simple_string(ptime(boost::posix_time::second_clock::local_time()));
string mensaDatumString =
std::to_string(mensaDatum.date().year()) + "-" + mensaDatum.date().month().as_short_string() + "-" +
@@ -15,7 +22,7 @@ Handler::MensaHandler::db_update_mensa_message(const int &mensaID, const ptime &
sqdb::QueryStr str;
db.Query(str.Format(
SQDB_MAKE_TEXT("update mensa set Message = '%s', LastModified = '%s' where ID = %i and Datum = '%s';"),
- message.c_str(), newTime.c_str(), mensaID, mensaDatumString.c_str())).Next();
+ messageFromJSON.c_str(), newTime.c_str(), mensaID, mensaDatumString.c_str())).Next();
return true;
}
@@ -49,7 +56,7 @@ Handler::MensaHandler::db_get_mensa_message(const int &mensaID, const ptime &men
if (s.Next()) {
int ID = s.GetField(0);
auto tmpData = crow::json::load(s.GetField(1).GetString());
- string Message = tmpData.;
+ auto Message = tmpData;
string Datum = s.GetField(2);
string LastModified = s.GetField(3);
@@ -57,7 +64,7 @@ Handler::MensaHandler::db_get_mensa_message(const int &mensaID, const ptime &men
ptime LMDate(boost::posix_time::time_from_string(LastModified));
out.ID = ID;
- out.Message = Message;
+ out.Message.push(Message);
out.Datum = mensaDatum;
out.LastModified = LMDate;
return out;
@@ -108,6 +115,8 @@ std::vector<crow::json::wvalue> Handler::MensaHandler::getEssen(const int mensa_
std::vector<crow::json::wvalue> Handler::MensaHandler::read_mensa_message_from_file(const int &mensa_id_file) {
std::vector<crow::json::wvalue> reply_vec;
+ crow::json::wvalue test;
+
string s;
bool serious = false;
@@ -249,7 +258,12 @@ Handler::MensaHandler::getEssenOnline(int mensa_ID, boost::posix_time::ptime dat
return reply_vec;
}
- db_insert_mensa_message(mensa_ID, datumEssen, crow::json::dump(read_mensa_message_from_file(mensa_ID)));
+ std::string jsonMessage;
+ for (auto &mes : read_mensa_message_from_file(mensa_ID)){
+ jsonMessage.append(crow::json::dump(mes));
+ }
+
+ db_insert_mensa_message(mensa_ID, datumEssen, jsonMessage);
return parseEssen(db_get_mensa_message(mensa_ID, datumEssen));
}