first commit to move to svelte

This commit is contained in:
2025-11-21 16:47:50 +01:00
parent d1c95d2b8b
commit e4289ee1ac
31 changed files with 2155 additions and 46 deletions

View File

@@ -12,14 +12,6 @@ Database::~Database() {
sqlite3_close(m_db);
}
string Database::currentTime(){
auto now = std::chrono::system_clock::now();
std::time_t t = std::chrono::system_clock::to_time_t(now);
std::stringstream ss;
ss << std::put_time(std::gmtime(&t), "%Y-%m-%d %H:%M:%S");
return ss.str();
}
sqlite3_stmt* Database::prepareStmt(const string& sql){
sqlite3_stmt* stmt = nullptr;
if (sqlite3_prepare_v2(m_db, sql.c_str(), -1, &stmt, nullptr) != SQLITE_OK) {

View File

@@ -30,8 +30,6 @@ public:
std::set<std::string> getStrSet(const std::string& sql);
static std::string currentTime();
template <typename T>
std::optional<T> getSqlData(sqlite3_stmt* stmt, int i)
{
@@ -85,21 +83,22 @@ private:
inline auto make_database() {
return sqlite_orm::make_storage(Database::dbFile,
auto storage = sqlite_orm::make_storage(Database::dbFile,
sqlite_orm::make_table("shadowrun_characters",
sqlite_orm::make_column("id", &shadowrun::ShadowrunCharacter::id, sqlite_orm::primary_key()),
sqlite_orm::make_column("name", &shadowrun::ShadowrunCharacter::name, sqlite_orm::not_null()),
sqlite_orm::make_column("created_at", &shadowrun::ShadowrunCharacter::created_at, sqlite_orm::default_value("CURRENT_TIMESTAMP"))
),
sqlite_orm::make_table("shadowrun_data",
sqlite_orm::make_column("id", &shadowrun::ShadowrunData::id, sqlite_orm::primary_key()),
sqlite_orm::make_column("character_id", &shadowrun::ShadowrunData::character_id, sqlite_orm::not_null()),
sqlite_orm::make_column("name", &shadowrun::ShadowrunData::name, sqlite_orm::not_null()),
sqlite_orm::make_column("value", &shadowrun::ShadowrunData::value),
sqlite_orm::make_column("created_at", &shadowrun::ShadowrunData::created_at, sqlite_orm::default_value("CURRENT_TIMESTAMP")),
sqlite_orm::make_column("updated_at", &shadowrun::ShadowrunData::updated_at, sqlite_orm::default_value("CURRENT_TIMESTAMP")),
sqlite_orm::foreign_key(&shadowrun::ShadowrunData::character_id).references(&shadowrun::ShadowrunCharacter::id).on_delete.cascade()
sqlite_orm::make_table("shadowrun_characters_data",
sqlite_orm::make_column("id", &shadowrun::ShadowrunCharacterData::id, sqlite_orm::primary_key()),
sqlite_orm::make_column("character_id", &shadowrun::ShadowrunCharacterData::character_id, sqlite_orm::not_null()),
sqlite_orm::make_column("type", &shadowrun::ShadowrunCharacterData::type, sqlite_orm::not_null()),
sqlite_orm::make_column("json", &shadowrun::ShadowrunCharacterData::json),
sqlite_orm::make_column("created_at", &shadowrun::ShadowrunCharacterData::created_at, sqlite_orm::default_value("CURRENT_TIMESTAMP")),
sqlite_orm::make_column("updated_at", &shadowrun::ShadowrunCharacterData::updated_at, sqlite_orm::default_value("CURRENT_TIMESTAMP")),
sqlite_orm::foreign_key(&shadowrun::ShadowrunCharacterData::character_id).references(&shadowrun::ShadowrunCharacter::id).on_delete.cascade()
));
return storage;
}
#endif // __DATABASE_H__