diff --git a/scripts/commands/guides/update.js b/scripts/commands/guides/update.js index 304d4ccc..2f8fe75e 100644 --- a/scripts/commands/guides/update.js +++ b/scripts/commands/guides/update.js @@ -27,6 +27,7 @@ async function main() { } programs = _.sortBy(programs, ['channel', 'start']) programs = programs.map(p => new Program(p, channels[p.channel])) + programs = _.uniqBy(programs, 'start') total += programs.length channels = Object.values(channels) channels = _.sortBy(channels, 'id') diff --git a/tests/__data__/input/database/update-guides/programs.db b/tests/__data__/input/database/update-guides/programs.db index 4baa4e97..9adefaa9 100644 --- a/tests/__data__/input/database/update-guides/programs.db +++ b/tests/__data__/input/database/update-guides/programs.db @@ -1,3 +1,4 @@ {"titles":[{"lang":"fr","value":"World Sport"}],"descriptions":[{"lang":"fr","value":"Все о главных спортивных событиях мира. Обзоры самых важных спортивных событий, аналитика, мнения экспертов."}],"sub_titles":[],"urls":[],"categories":[],"icon":{},"episodeNumbers":[],"date":null,"ratings":[],"directors":[],"actors":[],"writers":[],"adapters":[],"producers":[],"composers":[],"editors":[],"presenters":[],"commentators":[],"guests":[],"channel":"CNNInternationalEurope.us","start":1641825900000,"stop":1641826800000,"site":"chaines-tv.orange.fr","_qid":"0Wefq0oMR3feCcuY","_id":"12AJc0GeEJE9p4c3"} {"titles":[{"lang":"fr","value":"Connecting Africa. 114-я серия"}],"descriptions":[{"lang":"fr","value":"114-я серия. Проект, рассказывающий о людях и компаниях, которые совершают революцию в африканском бизнесе, и о тех, кто объединяет континент, выступая за свободную торговлю в Африке."}],"sub_titles":[],"urls":[],"categories":[],"icon":{},"episodeNumbers":[],"date":null,"ratings":[],"directors":[],"actors":[],"writers":[],"adapters":[],"producers":[],"composers":[],"editors":[],"presenters":[],"commentators":[],"guests":[],"channel":"CNNInternationalEurope.us","start":1641843900000,"stop":1641844800000,"site":"chaines-tv.orange.fr","_qid":"0Wefq0oMR3feCcuY","_id":"1dxcT34nyxzOlxBL"} {"titles":[{"lang":"en","value":"Robin Hood"}],"descriptions":[],"sub_titles":[],"urls":[],"categories":[],"icon":{},"episodeNumbers":[{"system":"xmltv_ns","value":"8.256.0/1"},{"system":"onscreen","value":"S09E257"}],"date":null,"ratings":[],"directors":[],"actors":[],"writers":[],"adapters":[],"producers":[],"composers":[],"editors":[],"presenters":[],"commentators":[],"guests":[],"channel":"MNetMovies2.za","start":1641822300000,"stop":1641829200000,"site":"dstv.com","_qid":"1lnhXpN7g0ER5XwN","_id":"1AoKArQw6MxP6pVU"} +{"titles":[{"lang":"en","value":"Robin Hood"}],"descriptions":[],"sub_titles":[],"urls":[],"categories":[],"icon":{},"episodeNumbers":[{"system":"xmltv_ns","value":"8.256.0/1"},{"system":"onscreen","value":"S09E257"}],"date":null,"ratings":[],"directors":[],"actors":[],"writers":[],"adapters":[],"producers":[],"composers":[],"editors":[],"presenters":[],"commentators":[],"guests":[],"channel":"MNetMovies2.za","start":1641822300000,"stop":1641829200000,"site":"dstv.com","_qid":"1lnhXpN7g0ER5XwN","_id":"12oKArQw6MxP6pVU"}