Closed Moorad closed 4 years ago
In script.js I tried the "validYoutubeURL" function and it works but only validates if the URL has the correct syntax. I hope it helps you, i am new to js.
Btn.addEventListener('click', () => {
if (!URLinput.value) {
alert('Enter YouTube URL');
} else if (validYoutubeURL(URLinput.value.trim())) {
if (select.value == 'mp3') {
redirectMp3(URLinput.value);
} else if (select.value == 'mp4') {
redirectMp4(URLinput.value);
}
}
});
function validYoutubeURL(str) {
if (!str) {
return false;
} else {
var exp = new RegExp(/(youtu\.be\/|youtube\.com\/watch\?v=)([a-zA-Z0-9\-_]+)/);
return exp.test(str);
}
}
I haven't tested this yet but it seems to be correct. One more thing though, if the user inputs in an invalid URL and clicks the button, there is no way for the user to know that the URL is invalid.
You might want to add an else
statement that would alert()
maybe? or do some kind of an error box or change the input box border to red? you can do whatever you want but alert()
might be the easiest
does that make sense?
Well this I think is the most clean option for checking a valid link
Edit: I apologise for my horrible site it's just for me and a couple of friends to use
I see, the implementation is indeed correct but it still does not alert the user that the URL is incorrect.
I will give this thread a couple of weeks and if I don't really get any response I'm happy to do it myself.
The app currently does not check for invalid URLs and often will result in errors if an invalid URL is inserted. currently there is no indication for the user to know that the URL is invalid and this bug need to be fixed.