def updateMusicBrainzIDs(songIDs=None): if not songIDs: return for song_id, tags in MusicBrainzDatabase.songTags(songIDs): mbIDs = getSongMusicBrainzIDs(song_id, tags) if any(mbIDs): MusicBrainzDatabase.insertMusicBrainzTags(song_id, mbIDs) MusicDatabase.commit()
def setSongRating(self, user_id, song_id, rating): try: self.ratings[user_id][song_id] = rating except KeyError: self.ratings[user_id] = {} self.ratings[user_id][song_id] = rating c = MusicDatabase.conn.cursor() sql = 'UPDATE ratings set rating = ? WHERE user_id = ? AND song_id = ?' c.execute(sql, (rating, user_id, song_id)) if c.rowcount == 0: c.execute('INSERT INTO ratings ' '(user_id, song_id, rating) ' 'VALUES (?,?,?)', (user_id, song_id, rating)) MusicDatabase.commit()
def setSongRating(self, user_id, song_id, rating): try: self.ratings[user_id][song_id] = rating except KeyError: self.ratings[user_id] = {} self.ratings[user_id][song_id] = rating c = MusicDatabase.conn.cursor() sql = 'UPDATE ratings set rating = ? WHERE user_id = ? AND song_id = ?' c.execute(sql, (rating, user_id, song_id)) if c.rowcount == 0: c.execute( 'INSERT INTO ratings ' '(user_id, song_id, rating) ' 'VALUES (?,?,?)', (user_id, song_id, rating)) MusicDatabase.commit()
def setSongUserRating(self, user_id, song_id, rating): try: self.user_ratings[user_id][song_id] = rating except KeyError: self.user_ratings[user_id] = {} self.user_ratings[user_id][song_id] = rating c = MusicDatabase.getCursor() sql = ('UPDATE ratings set userrating = :rating ' 'WHERE user_id = :user_id AND song_id = :song_id') sql = text(sql).bindparams(rating=rating, user_id=user_id, song_id=song_id) result = c.execute(sql) if result.rowcount == 0: sql = ('INSERT INTO ratings ' '(user_id, song_id, userrating) ' 'VALUES (:user_id,:song_id,:rating)') sql = text(sql).bindparams(rating=rating, user_id=user_id, song_id=song_id) c.execute(sql) MusicDatabase.commit()