commit
c24750cba8
|
@ -18,6 +18,8 @@ function main() {
|
||||||
createNoJekyllFile()
|
createNoJekyllFile()
|
||||||
console.log('Generating index.m3u...')
|
console.log('Generating index.m3u...')
|
||||||
generateIndex()
|
generateIndex()
|
||||||
|
console.log('Generating index.sfw.m3u...')
|
||||||
|
generateSFWIndex()
|
||||||
console.log('Generating channels.json...')
|
console.log('Generating channels.json...')
|
||||||
generateChannels()
|
generateChannels()
|
||||||
console.log('Generating index.country.m3u...')
|
console.log('Generating index.country.m3u...')
|
||||||
|
@ -118,6 +120,17 @@ function generateIndex() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function generateSFWIndex() {
|
||||||
|
const filename = `${ROOT_DIR}/index.sfw.m3u`
|
||||||
|
helper.createFile(filename, '#EXTM3U\n')
|
||||||
|
|
||||||
|
const sorted = helper.sortBy(list.all, ['name', 'url'])
|
||||||
|
const channels = helper.filterNSFW(sorted)
|
||||||
|
for (let channel of channels) {
|
||||||
|
helper.appendToFile(filename, channel.toString())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function generateChannels() {
|
function generateChannels() {
|
||||||
const filename = `${ROOT_DIR}/channels.json`
|
const filename = `${ROOT_DIR}/channels.json`
|
||||||
const sorted = helper.sortBy(list.all, ['name', 'url'])
|
const sorted = helper.sortBy(list.all, ['name', 'url'])
|
||||||
|
|
|
@ -241,6 +241,41 @@ helper.filterGroup = function (groupTitle) {
|
||||||
return this.supportedCategories[groupTitle.toLowerCase()] || ''
|
return this.supportedCategories[groupTitle.toLowerCase()] || ''
|
||||||
}
|
}
|
||||||
|
|
||||||
|
helper.filterNSFW = function (arr) {
|
||||||
|
const sfwCategories = [
|
||||||
|
'Auto',
|
||||||
|
'Business',
|
||||||
|
'Classic',
|
||||||
|
'Comedy',
|
||||||
|
'Documentary',
|
||||||
|
'Education',
|
||||||
|
'Entertainment',
|
||||||
|
'Family',
|
||||||
|
'Fashion',
|
||||||
|
'Food',
|
||||||
|
'General',
|
||||||
|
'Health',
|
||||||
|
'History',
|
||||||
|
'Hobby',
|
||||||
|
'Kids',
|
||||||
|
'Legislative',
|
||||||
|
'Lifestyle',
|
||||||
|
'Local',
|
||||||
|
'Movies',
|
||||||
|
'Music',
|
||||||
|
'News',
|
||||||
|
'Quiz',
|
||||||
|
'Religious',
|
||||||
|
'Sci-Fi',
|
||||||
|
'Shop',
|
||||||
|
'Sport',
|
||||||
|
'Travel',
|
||||||
|
'Weather'
|
||||||
|
]
|
||||||
|
|
||||||
|
return arr.filter(i => sfwCategories.includes(i.category))
|
||||||
|
}
|
||||||
|
|
||||||
helper.sleep = function (ms) {
|
helper.sleep = function (ms) {
|
||||||
return function (x) {
|
return function (x) {
|
||||||
return new Promise(resolve => setTimeout(() => resolve(x), ms))
|
return new Promise(resolve => setTimeout(() => resolve(x), ms))
|
||||||
|
|
Loading…
Reference in New Issue