From 379fe026fb79a8c5523d157bbfe22d30c7fee0d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Sat, 10 Dec 2016 04:15:49 +0100 Subject: Properly convert the data into a number of seconds by using duration_cast --- src/database/database.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/database') diff --git a/src/database/database.cpp b/src/database/database.cpp index f7d309b..cb0c78f 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -130,7 +130,7 @@ void Database::store_muc_message(const std::string& owner, const Iid& iid, line.owner = owner; line.ircChanName = iid.get_local(); line.ircServerName = iid.get_server(); - line.date = date.time_since_epoch().count() / 1'000'000'000; + line.date = std::chrono::duration_cast(date.time_since_epoch()).count(); line.body = body; line.nick = nick; -- cgit v1.2.3 From 1a09c965eb3723cdaab9ea556f30ffbc7f09a6dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Wed, 29 Mar 2017 23:32:43 +0200 Subject: Remove two sneaky log_debug --- src/database/database.cpp | 2 +- src/database/database.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/database') diff --git a/src/database/database.cpp b/src/database/database.cpp index cb0c78f..71b0c37 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -20,7 +20,7 @@ void Database::open(const std::string& filename, const std::string& db_type) "database="s + filename); if (new_db->needsUpgrade()) new_db->upgrade(); - Database::db.reset(new_db.release()); + Database::db = std::move(new_db); } catch (const litesql::DatabaseError& e) { log_error("Failed to open database ", filename, ". ", e.what()); throw; diff --git a/src/database/database.hpp b/src/database/database.hpp index 6823574..1665a9a 100644 --- a/src/database/database.hpp +++ b/src/database/database.hpp @@ -49,7 +49,7 @@ public: const std::string& server, const std::string& channel); static std::vector get_muc_logs(const std::string& owner, const std::string& chan_name, const std::string& server, - int limit=-1, const std::string& before="", const std::string& after=""); + int limit=-1, const std::string& start="", const std::string& end=""); static void store_muc_message(const std::string& owner, const Iid& iid, time_point date, const std::string& body, const std::string& nick); -- cgit v1.2.3 From 7f2127a7ea4c49fc1fbcd6cd6fb13e0265f4d841 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Thu, 30 Mar 2017 18:16:44 +0200 Subject: Add the archive ID to messages when they are sent to users This makes us compatible with mam 6.0 fix #3249 --- src/database/database.cpp | 14 +++++++++----- src/database/database.hpp | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src/database') diff --git a/src/database/database.cpp b/src/database/database.cpp index 71b0c37..9f310da 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -119,14 +119,16 @@ db::IrcChannelOptions Database::get_irc_channel_options_with_server_and_global_d return coptions; } -void Database::store_muc_message(const std::string& owner, const Iid& iid, - Database::time_point date, - const std::string& body, - const std::string& nick) +std::string Database::store_muc_message(const std::string& owner, const Iid& iid, + Database::time_point date, + const std::string& body, + const std::string& nick) { db::MucLogLine line(*Database::db); - line.uuid = Database::gen_uuid(); + auto uuid = Database::gen_uuid(); + + line.uuid = uuid; line.owner = owner; line.ircChanName = iid.get_local(); line.ircServerName = iid.get_server(); @@ -135,6 +137,8 @@ void Database::store_muc_message(const std::string& owner, const Iid& iid, line.nick = nick; line.update(); + + return uuid; } std::vector Database::get_muc_logs(const std::string& owner, const std::string& chan_name, const std::string& server, diff --git a/src/database/database.hpp b/src/database/database.hpp index 1665a9a..b08a175 100644 --- a/src/database/database.hpp +++ b/src/database/database.hpp @@ -50,7 +50,7 @@ public: const std::string& channel); static std::vector get_muc_logs(const std::string& owner, const std::string& chan_name, const std::string& server, int limit=-1, const std::string& start="", const std::string& end=""); - static void store_muc_message(const std::string& owner, const Iid& iid, + static std::string store_muc_message(const std::string& owner, const Iid& iid, time_point date, const std::string& body, const std::string& nick); static void close(); -- cgit v1.2.3