diff --git a/service_youtube.go b/service_youtube.go index 640b244..09768ff 100644 --- a/service_youtube.go +++ b/service_youtube.go @@ -63,17 +63,20 @@ func (y YouTube) URLRegex(url string) bool { // Creates the requested song/playlist and adds to the queue func (y YouTube) NewRequest(user *gumble.User, url string) error { + shortURL := "" + startOffset := "" youtubePlaylistPattern := `https?:\/\/www\.youtube\.com\/playlist\?list=([\w-]+)` + if re, err := regexp.Compile(youtubePlaylistPattern); err == nil { if re.MatchString(url) { if dj.HasPermission(user.Name, dj.conf.Permissions.AdminAddPlaylists) { - shortURL := re.FindStringSubmatch(url)[1] + shortURL = re.FindStringSubmatch(url)[1] NewYouTubePlaylist(user.Name, shortURL) } else { return errors.New("NO_PLAYLIST_PERMISSION") } } else { - matches = re.FindAllStringSubmatch(url, -1) + matches := re.FindAllStringSubmatch(url, -1) shortURL = matches[0][1] if len(matches[0]) == 3 { startOffset = matches[0][2]