lib: Import ban status from Ocarina 5.x
Now that I have a banned playlist working I can remember the ban status easier. Signed-off-by: Anna Schumaker <schumaker.anna@gmail.com>
This commit is contained in:
parent
a474712a22
commit
21c80ea1f9
|
@ -25,6 +25,7 @@ struct Callbacks {
|
|||
void (*on_library_track_add)(unsigned int);
|
||||
void (*on_library_track_del)(unsigned int);
|
||||
void (*on_library_track_updated)(unsigned int);
|
||||
void (*on_library_import_ban)(unsigned int);
|
||||
|
||||
/* Playlist callbacks */
|
||||
void (*on_playlist_ban)(unsigned int);
|
||||
|
|
|
@ -27,6 +27,7 @@ static struct Callbacks callbacks = {
|
|||
.on_library_track_add = no_op,
|
||||
.on_library_track_del = no_op,
|
||||
.on_library_track_updated = no_op,
|
||||
.on_library_import_ban = no_op,
|
||||
|
||||
.on_playlist_ban = no_op,
|
||||
.on_playlist_unban = no_op,
|
||||
|
|
|
@ -397,7 +397,7 @@ static void do_import_track(File &f, unsigned int lib_id)
|
|||
{
|
||||
struct ImportData data;
|
||||
std::string artist, album, genre;
|
||||
unsigned int artist_id, album_id, genre_id, track_id, year, tmp;
|
||||
unsigned int artist_id, album_id, genre_id, track_id, year, banned, tmp;
|
||||
|
||||
data.filepath = f.getline();
|
||||
data.title = f.getline();
|
||||
|
@ -409,7 +409,7 @@ static void do_import_track(File &f, unsigned int lib_id)
|
|||
f.getline(); /* lenstr */
|
||||
f >> tmp /* id */ >> year >> data.track >> data.count;
|
||||
f >> data.last_day >> data.last_month >> data.last_year >> data.length;
|
||||
f >> tmp >> tmp >>tmp >> tmp; /* bitrate, sample, channels, banned */
|
||||
f >> tmp >> tmp >>tmp >> banned; /* bitrate, sample, channels, banned */
|
||||
f.getline(); /* get rest of line */
|
||||
|
||||
artist_id = artist_db.insert(library :: AGInfo(library :: DB_ARTIST, artist));
|
||||
|
@ -423,6 +423,9 @@ static void do_import_track(File &f, unsigned int lib_id)
|
|||
filter::add(album_db[album_id].name, track_id);
|
||||
filter::add(track_db[track_id].title, track_id);
|
||||
get_callbacks()->on_library_track_add(track_id);
|
||||
|
||||
if (banned == true)
|
||||
get_callbacks()->on_library_import_ban(track_id);
|
||||
}
|
||||
|
||||
static void do_import_library(std::string &s)
|
||||
|
|
|
@ -11,6 +11,11 @@ static Database<IndexEntry> playlist_db("playlist.db");
|
|||
static Playqueue playlist_pq(PQ_ENABLED);
|
||||
static std::string cur_pq;
|
||||
|
||||
static void import_ban_track(unsigned int track_id)
|
||||
{
|
||||
playlist :: add("Banned", track_id);
|
||||
}
|
||||
|
||||
void playlist :: init()
|
||||
{
|
||||
std::set<unsigned int> ids;
|
||||
|
@ -21,6 +26,8 @@ void playlist :: init()
|
|||
playlist_pq.add_sort(SORT_TRACK);
|
||||
playlist_pq.set_flag(PQ_NEVER_SORT);
|
||||
|
||||
get_callbacks()->on_library_import_ban = import_ban_track;
|
||||
|
||||
playlist_db.load();
|
||||
|
||||
ids = get_tracks("Banned");
|
||||
|
|
Loading…
Reference in New Issue