Skip to content
Extraits de code Groupes Projets
Vérifiée Valider a8896c54 rédigé par Kubat's avatar Kubat
Parcourir les fichiers

Less code

parent b34622b9
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!79Database update
...@@ -134,25 +134,6 @@ error: ...@@ -134,25 +134,6 @@ error:
return ret; return ret;
} }
bool
database_config_queue_default(volatile sqlite3 *db)
{
static const char *SQL_DEFAULT =
"UPDATE queue_state SET"
" volume = 100,"
" paused = 1,"
" random = 0,"
" repeat = 0,"
" single = 0,"
" consume = 0,"
" current = NULL,"
" duration = 0;";
SQLITE_EXEC(db, SQL_DEFAULT, error);
return true;
error:
return false;
}
bool bool
database_get_config(volatile sqlite3 *db, const char *option, int *value) database_get_config(volatile sqlite3 *db, const char *option, int *value)
{ {
......
...@@ -7,6 +7,31 @@ ...@@ -7,6 +7,31 @@
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#define sqlite_just_exec(func, query) \
bool func (volatile sqlite3 *db) { \
SQLITE_EXEC(db, "BEGIN TRANSACTION;" #query "COMMIT;", error); \
return true; \
error: \
SQLITE_DO_ROLLBACK(db); \
return false; \
}
sqlite_just_exec(database_queue_toggle_pause, "UPDATE queue_state SET paused = 1 - paused;")
sqlite_just_exec(database_queue_crop, "DELETE FROM queue WHERE queue.kara_id <> (SELECT current FROM queue_state LIMIT 1);")
sqlite_just_exec(database_queue_stop, "UPDATE queue_state SET current = NULL;")
sqlite_just_exec(database_queue_clear, "DELETE FROM queue;DELETE FROM sqlite_sequence WHERE name = 'queue';UPDATE queue_state SET current = NULL;")
sqlite_just_exec(database_config_queue_default, "UPDATE queue_state SET volume = 100, paused = 1, random = 0, repeat = 0, single = 0, consume = 0, current = NULL, duration = 0;")
#undef sqlite_just_exec
bool
database_queue_set_paused(volatile sqlite3 *db, bool paused)
{
const char *SQL = paused ? "UPDATE queue_state SET paused = 1;" : "UPDATE queue_state SET paused = 0;";
SQLITE_EXEC(db, SQL, error);
return true;
error:
return false;
}
/* Find in in database/open.c */ /* Find in in database/open.c */
extern int is_sql_str_invalid(const char *); extern int is_sql_str_invalid(const char *);
...@@ -337,16 +362,6 @@ database_queue_skip_current(volatile sqlite3 *db, char filepath[PATH_MAX]) ...@@ -337,16 +362,6 @@ database_queue_skip_current(volatile sqlite3 *db, char filepath[PATH_MAX])
} }
} }
bool
database_queue_toggle_pause(volatile sqlite3 *db)
{
static const char *SQL_STMT = "UPDATE queue_state SET paused = 1 - paused";
SQLITE_EXEC(db, SQL_STMT, error);
return true;
error:
return false;
}
bool bool
database_queue_prev(volatile sqlite3 *db, char filepath[PATH_MAX]) database_queue_prev(volatile sqlite3 *db, char filepath[PATH_MAX])
{ {
...@@ -396,33 +411,6 @@ error: ...@@ -396,33 +411,6 @@ error:
return status; return status;
} }
bool
database_queue_clear(volatile sqlite3 *db)
{
static const char *SQL_STMT =
"BEGIN TRANSACTION;"
"DELETE FROM queue;"
"DELETE FROM sqlite_sequence WHERE name = 'queue';"
"UPDATE queue_state SET current = NULL;"
"COMMIT;";
SQLITE_EXEC(db, SQL_STMT, error);
return true;
error:
SQLITE_DO_ROLLBACK(db);
return false;
}
bool
database_queue_crop(volatile sqlite3 *db)
{
static const char *SQL_STMT =
"DELETE FROM queue WHERE queue.kara_id <> (SELECT current FROM queue_state LIMIT 1);";
SQLITE_EXEC(db, SQL_STMT, error);
return true;
error:
return false;
}
bool bool
database_queue_move(volatile sqlite3 *db, int from, int to) database_queue_move(volatile sqlite3 *db, int from, int to)
{ {
...@@ -483,16 +471,6 @@ error: ...@@ -483,16 +471,6 @@ error:
return ret; return ret;
} }
bool
database_queue_stop(volatile sqlite3 *db)
{
static const char *SQL_STMT = "UPDATE queue_state SET current = NULL;";
SQLITE_EXEC(db, SQL_STMT, error);
return true;
error:
return false;
}
bool bool
database_queue_set_current_index(volatile sqlite3 *db, int idx) database_queue_set_current_index(volatile sqlite3 *db, int idx)
{ {
...@@ -544,16 +522,6 @@ error: ...@@ -544,16 +522,6 @@ error:
return status; return status;
} }
bool
database_queue_set_paused(volatile sqlite3 *db, bool paused)
{
const char *SQL = paused ? "UPDATE queue_state SET paused = 1;" : "UPDATE queue_state SET paused = 0;";
SQLITE_EXEC(db, SQL, error);
return true;
error:
return false;
}
bool bool
database_queue_shuffle(volatile sqlite3 *db) database_queue_shuffle(volatile sqlite3 *db)
{ {
......
...@@ -226,18 +226,11 @@ error: ...@@ -226,18 +226,11 @@ error:
LOG_WARN_SCT("DB", "Failed to get informations about the last update: %s", sqlite3_errmsg((sqlite3 *) db)); LOG_WARN_SCT("DB", "Failed to get informations about the last update: %s", sqlite3_errmsg((sqlite3 *) db));
} }
void #define sqlite_just_exec(func, query) \
database_stamp(volatile sqlite3 *db) void func (volatile sqlite3 *db) { \
{ SQLITE_EXEC(db, #query, error); \
SQLITE_EXEC(db, "UPDATE misc SET last_update = strftime('%s','now');", error); error: return; \
error: }
return; sqlite_just_exec(database_stamp, "UPDATE misc SET last_update = strftime('%s','now');")
} sqlite_just_exec(database_updated, "UPDATE misc SET last_end_update = strftime('%s','now'), update_job = update_job + 1;")
#undef sqlite_just_exec
void
database_updated(volatile sqlite3 *db)
{
SQLITE_EXEC(db, "UPDATE misc SET last_end_update = strftime('%s','now'), update_job = update_job + 1;", error);
error:
return;
}
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter