#pragma once
#include <log/log.hpp>
namespace Settings::Statements
{
constexpr auto getValue = R"sql(
SELECT value
FROM settings_tab AS ST
WHERE ST.path = %q
COLLATE NOCASE;
)sql";
constexpr auto checkPathExists = R"sql(
SELECT COUNT(value) AS PATH_EXISTS FROM settings_tab AS ST
WHERE ST.path = %q
COLLATE NOCASE;
)sql";
constexpr auto CheckValueExistsInDictionary = R"sql(
SELECT COUNT(value) AS VALUE_EXISTS_IN_DICT FROM dictionary_tab AS DT
WHERE DT.path = %q
AND DT.value = %q
COLLATE NOCASE;
)sql";
constexpr auto checkSettingModified = R"sql(
SELECT COUNT(value) AS DATA_CHANGED FROM settings_tab AS ST
WHERE ST.path = %q
AND ST.value != %q COLLATE NOCASE ;
)sql";
constexpr auto insertValue = R"sql(
INSERT OR REPLACE INTO settings_tab (path, value) VALUES
( %q, %q ) ;
)sql";
constexpr auto updateValue = R"sql(
UPDATE settings_tab SET value = %q WHERE path = %q ;
)sql";
constexpr auto clearSettingsChangedTable = R"sql(
DELETE FROM settings_changed_tab;
)sql";
constexpr auto clearSettingsChangedRow = R"sql(
DELETE FROM settings_changed_tab
WHERE path = %q ;
)sql";
constexpr auto getSettingsChangeTable = R"sql(
SELECT path, value FROM settings_changed_tab
COLLATE NOCASE;
)sql";
constexpr auto getSettingsChangeRow = R"sql(
SELECT path, value FROM settings_changed_tab
WHERE path = %q
COLLATE NOCASE;
)sql";
constexpr auto setNotification = R"sql(
INSERT OR REPLACE INTO notifications_tab (path, service) VALUES "
( %q , %q ) ;
)sql";
constexpr auto getAllNotifications = R"sql(
SELECT path, service
FROM notifications_tab AS NT;
)sql";
constexpr auto clearNotificationTable = R"sql(
DELETE FROM notifications_tab;
)sql";
constexpr auto clearNotificationdRow = R"sql(
DELETE FROM notifications_tab
WHERE path = %q ;
)sql";
} // namespace Settings::Statements