Add direct search to Stations class

This commit is contained in:
Christer Warén 2021-11-29 19:50:05 +02:00
parent 7f791e0075
commit 145e23cc91
3 changed files with 24 additions and 3 deletions

View File

@ -41,7 +41,7 @@ module.exports = class Radio extends Map {
if(voiceChannel.members.filter(member => !member.user.bot).size === 0) return; if(voiceChannel.members.filter(member => !member.user.bot).size === 0) return;
const sstation = await client.stations.search(state.station.name); const sstation = await client.stations.search(state.station.name, "direct");
let station = sstation; let station = sstation;
if(!station) return; if(!station) return;

View File

@ -60,9 +60,20 @@ module.exports = class Stations extends Array {
} }
} }
search(key) { search(key, type) {
if (this === null) return false; if (this === null) return false;
if (!key) return false; if (!key) return false;
if (!type) return false;
if(type == "direct"){
let foundStation;
this.forEach(station => {
if(station.name != key) return false;
foundStation = station;
});
return foundStation;
} else {
let foundStations = []; let foundStations = [];
if (key == "radio") return false; if (key == "radio") return false;
@ -122,5 +133,6 @@ module.exports = class Stations extends Array {
} }
} }
return highestProbabilityStation; return highestProbabilityStation;
}
} }
}; };

View File

@ -84,7 +84,16 @@ module.exports = {
content: client.messageEmojis["error"] + client.messages.tooShortSearch, content: client.messageEmojis["error"] + client.messages.tooShortSearch,
ephemeral: true ephemeral: true
}); });
const sstation = await client.stations.search(query, client);
let type = "";
if(interaction.values?.[0]){
type = "direct";
} else {
type = "text";
}
const sstation = await client.stations.search(query, type);
if (!sstation) return interaction.reply({ if (!sstation) return interaction.reply({
content: client.messageEmojis["error"] + client.messages.noSearchResults, content: client.messageEmojis["error"] + client.messages.noSearchResults,
ephemeral: true ephemeral: true