fox:Manual eslint rule violation fixes.
This commit is contained in:
parent
168f2c549b
commit
979dc028c7
46
mopidy_musicbox_webclient/static/js/controls.js
vendored
46
mopidy_musicbox_webclient/static/js/controls.js
vendored
@ -8,7 +8,7 @@ function playBrowsedTracks (action, trackIndex) {
|
||||
if (typeof trackIndex === 'undefined') {
|
||||
trackIndex = $('#popupBrowse').data('tlid')
|
||||
}
|
||||
if (action == PLAY_ALL) {
|
||||
if (action === PLAY_ALL) {
|
||||
mopidy.tracklist.clear()
|
||||
// Default for radio streams is to just add the selected URI.
|
||||
if (isStreamUri(browseTracks[trackIndex].uri)) {
|
||||
@ -62,8 +62,8 @@ function playTrack (action) {
|
||||
var divid = hash[0].substr(1)
|
||||
|
||||
// Search page default click behaviour adds and plays selected track only.
|
||||
if (action == PLAY_NOW && divid == 'search') {
|
||||
action = PLAY_NOW_SEARCH
|
||||
if (action === PLAY_NOW && divid === 'search') {
|
||||
action === PLAY_NOW_SEARCH
|
||||
}
|
||||
|
||||
$('#popupTracks').popup('close')
|
||||
@ -76,7 +76,7 @@ function playTrack (action) {
|
||||
var trackUris = getTracksFromUri(playlisturi)
|
||||
// find track that was selected
|
||||
for (var selected = 0; selected < trackUris.length; selected++) {
|
||||
if (trackUris[selected] == uri) {
|
||||
if (trackUris[selected] === uri) {
|
||||
break
|
||||
}
|
||||
}
|
||||
@ -121,7 +121,7 @@ function playTrackByUri (track_uri, playlist_uri) {
|
||||
if (tlTracks.length > 0) {
|
||||
// Find track that was selected
|
||||
for (var selected = 0; selected < tlTracks.length; selected++) {
|
||||
if (tlTracks[selected].track.uri == track_uri) {
|
||||
if (tlTracks[selected].track.uri === track_uri) {
|
||||
mopidy.playback.play({'tl_track': tlTracks[selected]})
|
||||
return
|
||||
}
|
||||
@ -214,7 +214,7 @@ function clearQueue () {
|
||||
}
|
||||
|
||||
function savePressed (key) {
|
||||
if (key == 13) {
|
||||
if (key === 13) {
|
||||
saveQueue()
|
||||
return false
|
||||
}
|
||||
@ -228,7 +228,6 @@ function showSavePopup () {
|
||||
$('#popupSave').popup('open')
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
function saveQueue () {
|
||||
@ -335,33 +334,33 @@ function backbt () {
|
||||
*************/
|
||||
function setTracklistOption (name, new_value) {
|
||||
if (!new_value) {
|
||||
$("#" + name+'bt').attr('style', 'color:#2489ce')
|
||||
$('#' + name + 'bt').attr('style', 'color:#2489ce')
|
||||
} else {
|
||||
$("#" + name+'bt').attr('style', 'color:#66DD33')
|
||||
$('#' + name + 'bt').attr('style', 'color:#66DD33')
|
||||
}
|
||||
return new_value
|
||||
}
|
||||
|
||||
function setRepeat (nwrepeat) {
|
||||
if (repeat != nwrepeat) {
|
||||
if (repeat !== nwrepeat) {
|
||||
repeat = setTracklistOption('repeat', nwrepeat)
|
||||
}
|
||||
}
|
||||
|
||||
function setRandom (nwrandom) {
|
||||
if (random != nwrandom) {
|
||||
if (random !== nwrandom) {
|
||||
random = setTracklistOption('random', nwrandom)
|
||||
}
|
||||
}
|
||||
|
||||
function setConsume (nwconsume) {
|
||||
if (consume != nwconsume) {
|
||||
if (consume !== nwconsume) {
|
||||
consume = setTracklistOption('consume', nwconsume)
|
||||
}
|
||||
}
|
||||
|
||||
function setSingle (nwsingle) {
|
||||
if (single != nwsingle) {
|
||||
if (single !== nwsingle) {
|
||||
single = setTracklistOption('single', nwsingle)
|
||||
}
|
||||
}
|
||||
@ -382,7 +381,6 @@ function doSingle () {
|
||||
mopidy.tracklist.setSingle({'value': !single}).then()
|
||||
}
|
||||
|
||||
|
||||
/** *********************************************
|
||||
* Track Slider *
|
||||
* Use a timer to prevent looping of commands *
|
||||
@ -397,7 +395,7 @@ function doSeekPos (value) {
|
||||
}
|
||||
|
||||
function setPosition (pos) {
|
||||
if (!positionChanging && $('#trackslider').val() != pos) {
|
||||
if (!positionChanging && $('#trackslider').val() !== pos) {
|
||||
setProgressTimer(pos)
|
||||
}
|
||||
}
|
||||
@ -408,10 +406,10 @@ function setPosition (pos) {
|
||||
***********************************************/
|
||||
|
||||
function setVolume (value) {
|
||||
if (!volumeChanging && !volumeSliding && $('#volumeslider').val() != value) {
|
||||
$("#volumeslider").off( 'change')
|
||||
$("#volumeslider").val(value).slider('refresh')
|
||||
$("#volumeslider").on( 'change', function () { doVolume($(this).val()) })
|
||||
if (!volumeChanging && !volumeSliding && $('#volumeslider').val() !== value) {
|
||||
$('#volumeslider').off('change')
|
||||
$('#volumeslider').val(value).slider('refresh')
|
||||
$('#volumeslider').on('change', function () { doVolume($(this).val()) })
|
||||
}
|
||||
}
|
||||
|
||||
@ -425,7 +423,7 @@ function doVolume (value) {
|
||||
}
|
||||
|
||||
function setMute (nwmute) {
|
||||
if (mute != nwmute) {
|
||||
if (mute !== nwmute) {
|
||||
mute = nwmute
|
||||
if (mute) {
|
||||
$('#mutebt').attr('class', 'fa fa-volume-off')
|
||||
@ -443,7 +441,7 @@ function doMute () {
|
||||
* Stream *
|
||||
************/
|
||||
function streamPressed (key) {
|
||||
if (key == 13) {
|
||||
if (key === 13) {
|
||||
playStreamUri()
|
||||
return false
|
||||
}
|
||||
@ -552,11 +550,11 @@ function addToFavourites (newTracks) {
|
||||
}
|
||||
|
||||
function addFavourite (uri, name) {
|
||||
var uri = uri || $('#streamuriinput').val().trim()
|
||||
var name = name || $('#streamnameinput').val().trim()
|
||||
uri = uri || $('#streamuriinput').val().trim()
|
||||
name = name || $('#streamnameinput').val().trim()
|
||||
mopidy.library.lookup({'uris': [uri]}).then(function (results) {
|
||||
var newTracks = results[uri]
|
||||
if (newTracks.length == 1) {
|
||||
if (newTracks.length === 1) {
|
||||
// TODO: Supporting adding an entire playlist?
|
||||
if (name) {
|
||||
newTracks[0].name = name // User overrides name.
|
||||
|
||||
@ -42,11 +42,11 @@ var customTracklists = []
|
||||
var browseStack = []
|
||||
var browseTracks = []
|
||||
|
||||
var ua = navigator.userAgent,
|
||||
isMobileSafari = /Mac/.test(ua) && /Mobile/.test(ua),
|
||||
isMobileWebkit = /WebKit/.test(ua) && /Mobile/.test(ua),
|
||||
isMobile = /Mobile/.test(ua),
|
||||
isWebkit = /WebKit/.test(ua)
|
||||
var ua = navigator.userAgent
|
||||
var isMobileSafari = /Mac/.test(ua) && /Mobile/.test(ua)
|
||||
var isMobileWebkit = /WebKit/.test(ua) && /Mobile/.test(ua)
|
||||
var isMobile = /Mobile/.test(ua)
|
||||
var isWebkit = /WebKit/.test(ua)
|
||||
|
||||
// constants
|
||||
PROGRAM_NAME = 'MusicBox'
|
||||
@ -215,7 +215,7 @@ function resultsToTables (results, target, uri) {
|
||||
return
|
||||
}
|
||||
var tlids = []
|
||||
if (target == CURRENT_PLAYLIST_TABLE) {
|
||||
if (target === CURRENT_PLAYLIST_TABLE) {
|
||||
for (i = 0; i < results.length; i++) {
|
||||
tlids[i] = results[i].tlid
|
||||
results[i] = results[i].track
|
||||
@ -255,7 +255,7 @@ function resultsToTables (results, target, uri) {
|
||||
}
|
||||
|
||||
// leave out unplayable items
|
||||
if (results[i].name.substring(0, 12) == '[unplayable]') continue
|
||||
if (results[i].name.substring(0, 12) === '[unplayable]') continue
|
||||
|
||||
newalbum.push(results[i])
|
||||
newtlids.push(tlids[i])
|
||||
@ -263,39 +263,40 @@ function resultsToTables (results, target, uri) {
|
||||
if ((i < length - 1) && results[i + 1].album && results[i + 1].album.name) {
|
||||
nextname = results[i + 1].album.name
|
||||
}
|
||||
if (results[i].length == -1) {
|
||||
if (results[i].length === -1) {
|
||||
html += '<li class="albumli"><a href="#"><h1><i class="' + iconClass + '"></i> ' + results[i].name + ' [Stream]</h1></a></li>'
|
||||
newalbum = []
|
||||
newtlids = []
|
||||
nextname = ''
|
||||
} else {
|
||||
if ((results[i].album.name != nextname) || (nextname === '')) {
|
||||
if ((results[i].album.name !== nextname) || (nextname === '')) {
|
||||
tableid = 'art' + i
|
||||
// render differently if only one track in the album
|
||||
if (newalbum.length == 1) {
|
||||
if (newalbum.length === 1) {
|
||||
var liID = ''
|
||||
if (i !== 0) {
|
||||
html += '<li class="smalldivider"> </li>'
|
||||
}
|
||||
iconClass = getMediaClass(newalbum[0].uri)
|
||||
var liID = targetmin + '-' + newalbum[0].uri
|
||||
if (target == CURRENT_PLAYLIST_TABLE) {
|
||||
liID = targetmin + '-' + newalbum[0].uri
|
||||
if (target === CURRENT_PLAYLIST_TABLE) {
|
||||
html += '<li class="song albumli" id="' + liID + '" tlid="' + newtlids[0] + '">' +
|
||||
'<a href="#" class="moreBtn" onclick="return popupTracks(event, \'' + uri + '\',\'' + newalbum[0].uri + '\',\'' + newtlids[0] + '\');">' +
|
||||
'<i class="fa fa-ellipsis-v"></i></a>' +
|
||||
'<a href="#" onclick="return playTrackQueueByTlid(\'' + newalbum[0].uri + '\',\'' + newtlids[0] + '\');">' +
|
||||
'<h1><i class="' + iconClass + '"></i> ' + newalbum[0].name + "</h1><p>"
|
||||
'<h1><i class="' + iconClass + '"></i> ' + newalbum[0].name + '</h1><p>'
|
||||
} else {
|
||||
html += '<li class="song albumli" id="' + liID + '">' +
|
||||
'<a href="#" class="moreBtn" onclick="return popupTracks(event, \'' + uri + '\',\'' + newalbum[0].uri + '\');">' +
|
||||
'<i class="fa fa-ellipsis-v"></i></a>' +
|
||||
'<a href="#" onclick="return playTrackByUri(\'' + newalbum[0].uri + '\',\'' + uri + '\');">' +
|
||||
'<h1><i class="' + iconClass + '"></i> ' + newalbum[0].name + "</h1><p>"
|
||||
'<h1><i class="' + iconClass + '"></i> ' + newalbum[0].name + '</h1><p>'
|
||||
}
|
||||
|
||||
if (newalbum[0].artists) {
|
||||
for (j = 0; j < newalbum[0].artists.length; j++) {
|
||||
html += newalbum[0].artists[j].name
|
||||
html += (j == newalbum[0].artists.length - 1) ? '' : ' / '
|
||||
html += (j === newalbum[0].artists.length - 1) ? '' : ' / '
|
||||
// stop after 3
|
||||
if (j > 2) {
|
||||
html += '...'
|
||||
@ -322,7 +323,7 @@ function resultsToTables (results, target, uri) {
|
||||
if (results[i].album.artists) {
|
||||
for (j = 0; j < results[i].album.artists.length; j++) {
|
||||
html += results[i].album.artists[j].name
|
||||
html += (j == results[i].album.artists.length - 1) ? '' : ' / '
|
||||
html += (j === results[i].album.artists.length - 1) ? '' : ' / '
|
||||
// stop after 3
|
||||
if (j > 2) {
|
||||
child += '...'
|
||||
@ -334,8 +335,8 @@ function resultsToTables (results, target, uri) {
|
||||
for (j = 0; j < newalbum.length; j++) {
|
||||
popupData[newalbum[j].uri] = newalbum[j]
|
||||
// hERE!
|
||||
var liID = targetmin + '-' + newalbum[j].uri
|
||||
if (target == CURRENT_PLAYLIST_TABLE) {
|
||||
liID = targetmin + '-' + newalbum[j].uri
|
||||
if (target === CURRENT_PLAYLIST_TABLE) {
|
||||
html += renderQueueSongLi(newalbum[j], liID, uri, newtlids[j])
|
||||
} else {
|
||||
html += renderSongLi(newalbum[j], liID, uri)
|
||||
@ -369,13 +370,13 @@ function playlisttotable (pl, target, uri) {
|
||||
if (pl[i]) {
|
||||
popupData[pl[i].uri] = pl[i]
|
||||
child = '<li id="' + targetmin + '-' + pl[i].uri + '"><a href="#" onclick="return popupTracks(event, \'' + uri + '\',\'' + pl[i].uri + '\');">'
|
||||
child += '<h1>' + pl[i].name + "</h1>"
|
||||
child += '<h1>' + pl[i].name + 'h1>'
|
||||
child += '<p>'
|
||||
child += '<span style="float: right;">' + timeFromSeconds(pl[i].length / 1000) + '</span>'
|
||||
for (var j = 0; j < pl[i].artists.length; j++) {
|
||||
if (pl[i].artists[j]) {
|
||||
child += pl[i].artists[j].name
|
||||
child += (j == pl[i].artists.length - 1) ? '' : ' / '
|
||||
child += (j === pl[i].artists.length - 1) ? '' : ' / '
|
||||
// stop after 3
|
||||
if (j > 2) {
|
||||
child += '...'
|
||||
@ -436,7 +437,7 @@ function timeFromSeconds (length) {
|
||||
/** ***** Toast ***/
|
||||
function toast (message, delay, textOnly) {
|
||||
textOnl = textOnly || false
|
||||
message = message || "Loading..."
|
||||
message = message || 'Loading...'
|
||||
delay = delay || 1000
|
||||
$.mobile.loading('show', {
|
||||
text: message,
|
||||
@ -480,7 +481,6 @@ function showOffline (on) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// from http://dzone.com/snippets/validate-url-regexp
|
||||
function validUri (str) {
|
||||
var regexp = /^(mms|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
|
||||
@ -504,7 +504,7 @@ function isStreamUri (uri) {
|
||||
function getMediaClass (uri) {
|
||||
var scheme = getScheme(uri)
|
||||
for (var i = 0; i < uriClassList.length; i++) {
|
||||
if (scheme == uriClassList[i][0]) {
|
||||
if (scheme === uriClassList[i][0]) {
|
||||
return 'fa ' + uriClassList[i][1]
|
||||
}
|
||||
}
|
||||
@ -514,7 +514,7 @@ function getMediaClass (uri) {
|
||||
function getMediaHuman (uri) {
|
||||
var scheme = getScheme(uri)
|
||||
for (var i = 0; i < uriHumanList.length; i++) {
|
||||
if (scheme == uriHumanList[i][0]) {
|
||||
if (scheme === uriHumanList[i][0]) {
|
||||
return uriHumanList[i][1]
|
||||
}
|
||||
}
|
||||
@ -523,13 +523,14 @@ function getMediaHuman (uri) {
|
||||
|
||||
function isServiceUri (uri) {
|
||||
var scheme = getScheme(uri)
|
||||
for (var i = 0; i < uriClassList.length; i++) {
|
||||
if (scheme == uriClassList[i][0]) {
|
||||
var i = 0
|
||||
for (i = 0; i < uriClassList.length; i++) {
|
||||
if (scheme === uriClassList[i][0]) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
for (var i = 0; i < radioExtensionsList.length; i++) {
|
||||
if (scheme == radioExtensionsList[i]) {
|
||||
for (i = 0; i < radioExtensionsList.length; i++) {
|
||||
if (scheme === radioExtensionsList[i]) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
@ -537,11 +538,11 @@ function isServiceUri (uri) {
|
||||
}
|
||||
|
||||
function isFavouritesPlaylist (playlist) {
|
||||
return (playlist.name == STREAMS_PLAYLIST_NAME &&
|
||||
getScheme(playlist.uri) == STREAMS_PLAYLIST_SCHEME)
|
||||
return (playlist.name === STREAMS_PLAYLIST_NAME &&
|
||||
getScheme(playlist.uri) === STREAMS_PLAYLIST_SCHEME)
|
||||
}
|
||||
|
||||
function isSpotifyStarredPlaylist (playlist) {
|
||||
var starredRegex = /spotify:user:.*:starred/g
|
||||
return (starredRegex.test(playlist.uri) && playlist.name == 'Starred')
|
||||
return (starredRegex.test(playlist.uri) && playlist.name === 'Starred')
|
||||
}
|
||||
|
||||
@ -9,9 +9,9 @@
|
||||
function resetSong () {
|
||||
setPlayState(false)
|
||||
setPosition(0)
|
||||
var data = new Object({})
|
||||
var data = {}
|
||||
data.tlid = -1
|
||||
data.track = new Object({})
|
||||
data.track = {}
|
||||
data.track.name = ''
|
||||
data.track.artists = ''
|
||||
data.track.length = 0
|
||||
@ -60,7 +60,6 @@ function resizeMb () {
|
||||
$('#playlistslistdiv').show();
|
||||
}
|
||||
|
||||
|
||||
if (isMobileWebkit && ($(window).width() > 480)) {
|
||||
playlistslistScroll.refresh();
|
||||
playlisttracksScroll.refresh();
|
||||
@ -79,7 +78,7 @@ function setSongTitle (title, refresh_ui) {
|
||||
function setSongInfo (data) {
|
||||
// console.log(data, songdata);
|
||||
if (!data) { return }
|
||||
if (data.tlid == songdata.tlid) { return }
|
||||
if (data.tlid === songdata.tlid) { return }
|
||||
if (!data.track.name || data.track.name === '') {
|
||||
var name = data.track.uri.split('/')
|
||||
data.track.name = decodeURI(name[name.length - 1])
|
||||
@ -92,7 +91,7 @@ function setSongInfo (data) {
|
||||
if (validUri(data.track.name)) {
|
||||
for (var key in streamUris) {
|
||||
rs = streamUris[key]
|
||||
if (rs && rs[1] == data.track.name) {
|
||||
if (rs && rs[1] === data.track.name) {
|
||||
data.track.name = (rs[0] || rs[1])
|
||||
}
|
||||
}
|
||||
@ -120,7 +119,7 @@ function setSongInfo (data) {
|
||||
for (var j = 0; j < data.track.artists.length; j++) {
|
||||
artistshtml += '<a href="#" onclick="return showArtist(\'' + data.track.artists[j].uri + '\');">' + data.track.artists[j].name + '</a>'
|
||||
artiststext += data.track.artists[j].name
|
||||
if (j != data.track.artists.length - 1) {
|
||||
if (j !== data.track.artists.length - 1) {
|
||||
artistshtml += ', '
|
||||
artiststext += ', '
|
||||
}
|
||||
@ -161,14 +160,15 @@ function closePopups () {
|
||||
}
|
||||
|
||||
function popupTracks (e, listuri, trackuri, tlid) {
|
||||
if (!e)
|
||||
if (!e) {
|
||||
e = window.event
|
||||
}
|
||||
$('.popupTrackName').html(popupData[trackuri].name)
|
||||
$('.popupAlbumName').html(popupData[trackuri].album.name)
|
||||
var child = ""
|
||||
var child = ''
|
||||
|
||||
if (popupData[trackuri].artists) {
|
||||
if (popupData[trackuri].artists.length == 1) {
|
||||
if (popupData[trackuri].artists.length === 1) {
|
||||
child = '<a href="#" onclick="showArtist(\'' + popupData[trackuri].artists[0].uri + '\');">Show Artist</a>'
|
||||
$('.popupArtistName').html(popupData[trackuri].artists[0].name)
|
||||
$('.popupArtistHref').attr('onclick', 'showArtist("' + popupData[trackuri].artists[0].uri + '");')
|
||||
@ -192,10 +192,10 @@ function popupTracks (e, listuri, trackuri, tlid) {
|
||||
var hash = document.location.hash.split('?')
|
||||
var divid = hash[0].substr(1)
|
||||
var popupName = ''
|
||||
if (divid == 'current') {
|
||||
if (divid === 'current') {
|
||||
$('.addqueue').hide()
|
||||
popupName = '#popupQueue'
|
||||
} else if (divid == 'browse') {
|
||||
} else if (divid === 'browse') {
|
||||
$('.addqueue').show()
|
||||
popupName = '#popupBrowse'
|
||||
} else {
|
||||
@ -203,7 +203,7 @@ function popupTracks (e, listuri, trackuri, tlid) {
|
||||
popupName = '#popupTracks'
|
||||
}
|
||||
|
||||
if (typeof tlid != 'undefined' && tlid !== '') {
|
||||
if (typeof tlid !== 'undefined' && tlid !== '') {
|
||||
$(popupName).data('list', listuri).data('track', trackuri).data('tlid', tlid).popup('open', {
|
||||
x: e.pageX,
|
||||
y: e.pageY
|
||||
@ -311,7 +311,6 @@ function initSocketevents () {
|
||||
|
||||
$(document).bind('pageinit', function () {
|
||||
resizeMb()
|
||||
|
||||
})
|
||||
|
||||
/** ************
|
||||
@ -392,7 +391,6 @@ function locationHashChanged () {
|
||||
var divid = hash[0].substr(1)
|
||||
setHeadline(divid)
|
||||
|
||||
|
||||
var uri = hash[1]
|
||||
$('.mainNav a').removeClass('ui-state-active ui-state-persist ui-btn-active')
|
||||
// i don't know why some li elements have those classes, but they do, so we need to remove them
|
||||
@ -497,8 +495,7 @@ $(document).ready(function (event) {
|
||||
initSocketevents()
|
||||
|
||||
progressTimer = new ProgressTimer({
|
||||
callback: timerCallback,
|
||||
// updateRate: 2000,
|
||||
callback: timerCallback
|
||||
})
|
||||
|
||||
resetSong()
|
||||
@ -535,9 +532,9 @@ $(document).ready(function (event) {
|
||||
// event handlers for full screen mode
|
||||
$(document).on('webkitfullscreenchange mozfullscreenchange fullscreenchange, MSFullscreenChange', function (e) {
|
||||
if (isFullscreen()) {
|
||||
document.getElementById('toggletxt').innerHTML = "Exit Fullscreen"
|
||||
document.getElementById('toggletxt').innerHTML = 'Exit Fullscreen'
|
||||
} else {
|
||||
document.getElementById('toggletxt').innerHTML = "Fullscreen"
|
||||
document.getElementById('toggletxt').innerHTML = 'Fullscreen'
|
||||
}
|
||||
})
|
||||
|
||||
@ -560,7 +557,7 @@ $(document).ready(function (event) {
|
||||
|
||||
$(document).keypress(function (event) {
|
||||
// console.log('kp: '+event);
|
||||
if (event.target.tagName != 'INPUT') {
|
||||
if (event.target.tagName !== 'INPUT') {
|
||||
var unicode = event.keyCode ? event.keyCode : event.charCode
|
||||
var actualkey = String.fromCharCode(unicode)
|
||||
switch (actualkey) {
|
||||
@ -581,7 +578,6 @@ $(document).ready(function (event) {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
if ($(window).width() < 980) {
|
||||
$('#panel').panel('close')
|
||||
} else {
|
||||
@ -593,42 +589,44 @@ $(document).ready(function (event) {
|
||||
$.event.special.swipe.durationThreshold = 500
|
||||
|
||||
// swipe songinfo and panel
|
||||
$("#normalFooter, #nowPlayingFooter").on( 'swiperight', doPrevious)
|
||||
$("#normalFooter, #nowPlayingFooter").on( 'swipeleft', doNext)
|
||||
$("#nowPlayingpane, .ui-body-c, #header, #panel, .pane").on( 'swiperight', function () {
|
||||
$('#normalFooter, #nowPlayingFooter').on('swiperight', doPrevious)
|
||||
$('#normalFooter, #nowPlayingFooter').on('swipeleft', doNext)
|
||||
$('#nowPlayingpane, .ui-body-c, #header, #panel, .pane').on('swiperight', function () {
|
||||
if (!$(event.target).is('#normalFooter') && !$(event.target).is('#nowPlayingFooter')) {
|
||||
$('#panel').panel('open')
|
||||
event.stopImmediatePropagation() }
|
||||
event.stopImmediatePropagation()
|
||||
}
|
||||
})
|
||||
$("#nowPlayingpane, .ui-body-c, #header, #panel, .pane").on( 'swipeleft', function () {
|
||||
$('#nowPlayingpane, .ui-body-c, #header, #panel, .pane').on('swipeleft', function () {
|
||||
if (!$(event.target).is('#normalFooter') && !$(event.target).is('#nowPlayingFooter')) {
|
||||
$('#panel').panel('close')
|
||||
event.stopImmediatePropagation() }
|
||||
event.stopImmediatePropagation()
|
||||
}
|
||||
})
|
||||
|
||||
$("#trackslider").on( 'slidestart', function () {
|
||||
$('#trackslider').on('slidestart', function () {
|
||||
progressTimer.stop()
|
||||
$("#trackslider").on( 'change', function () { updatePosition($(this).val()) })
|
||||
$('#trackslider').on('change', function () { updatePosition($(this).val()) })
|
||||
})
|
||||
|
||||
$("#trackslider").on( 'slidestop', function () {
|
||||
$("#trackslider").off( 'change')
|
||||
$('#trackslider').on('slidestop', function () {
|
||||
$('#trackslider').off('change')
|
||||
doSeekPos($(this).val())
|
||||
})
|
||||
|
||||
$("#volumeslider").on( 'slidestart', function () { volumeSliding = true })
|
||||
$("#volumeslider").on( 'slidestop', function () { volumeSliding = false })
|
||||
$("#volumeslider").on( 'change', function () { doVolume($(this).val()) })
|
||||
$('#volumeslider').on('slidestart', function () { volumeSliding = true })
|
||||
$('#volumeslider').on('slidestop', function () { volumeSliding = false })
|
||||
$('#volumeslider').on('change', function () { doVolume($(this).val()) })
|
||||
})
|
||||
|
||||
function updatePlayIcons (uri, tlid) {
|
||||
// update styles of listviews
|
||||
$('#currenttable li').each(function () {
|
||||
var eachTlid = $(this).attr('tlid')
|
||||
if (typeof eachTlid != 'undefined') {
|
||||
if (typeof eachTlid !== 'undefined') {
|
||||
eachTlid = parseInt(eachTlid)
|
||||
}
|
||||
if (this.id == 'currenttable-' + uri && eachTlid == tlid) {
|
||||
if (this.id === 'currenttable-' + uri && eachTlid === tlid) {
|
||||
$(this).addClass('currenttrack')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack')
|
||||
@ -636,7 +634,7 @@ function updatePlayIcons (uri, tlid) {
|
||||
})
|
||||
|
||||
$('#playlisttracks li').each(function () {
|
||||
if (this.id == 'playlisttracks-' + uri) {
|
||||
if (this.id === 'playlisttracks-' + uri) {
|
||||
$(this).addClass('currenttrack2')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack2')
|
||||
@ -644,7 +642,7 @@ function updatePlayIcons (uri, tlid) {
|
||||
})
|
||||
|
||||
$('#trackresulttable li').each(function () {
|
||||
if (this.id == 'trackresulttable-' + uri) {
|
||||
if (this.id === 'trackresulttable-' + uri) {
|
||||
$(this).addClass('currenttrack2')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack2')
|
||||
@ -652,7 +650,7 @@ function updatePlayIcons (uri, tlid) {
|
||||
})
|
||||
|
||||
$('#artiststable li').each(function () {
|
||||
if (this.id == 'artiststable-' + uri) {
|
||||
if (this.id === 'artiststable-' + uri) {
|
||||
$(this).addClass('currenttrack2')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack2')
|
||||
@ -660,14 +658,14 @@ function updatePlayIcons (uri, tlid) {
|
||||
})
|
||||
|
||||
$('#albumstable li').each(function () {
|
||||
if (this.id == 'albumstable-' + uri) {
|
||||
if (this.id === 'albumstable-' + uri) {
|
||||
$(this).addClass('currenttrack2')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack2')
|
||||
}
|
||||
})
|
||||
$('#browselist li').each(function () {
|
||||
if (this.id == 'browselisttracks-' + uri) {
|
||||
if (this.id === 'browselisttracks-' + uri) {
|
||||
$(this).addClass('currenttrack2')
|
||||
} else {
|
||||
$(this).removeClass('currenttrack2')
|
||||
|
||||
@ -72,7 +72,7 @@ function getCoverFromLastFm (track, images, size) {
|
||||
lastfm.album.getInfo({artist: artistname, album: albumname},
|
||||
{ success: function (data) {
|
||||
for (var i = 0; i < data.album.image.length; i++) {
|
||||
if (data.album.image[i].size == size) {
|
||||
if (data.album.image[i].size === size) {
|
||||
$(images).attr('src', data.album.image[i]['#text'] || defUrl)
|
||||
}
|
||||
}
|
||||
@ -84,7 +84,7 @@ function getArtistImage (nwartist, image, size) {
|
||||
var defUrl = 'images/user_24x32.png'
|
||||
lastfm.artist.getInfo({artist: nwartist}, {success: function (data) {
|
||||
for (var i = 0; i < data.artist.image.length; i++) {
|
||||
if (data.artist.image[i].size == size) {
|
||||
if (data.artist.image[i].size === size) {
|
||||
$(image).attr('src', data.artist.image[i]['#text'] || defUrl)
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,7 +5,7 @@ function searchPressed (key) {
|
||||
var value = $('#searchinput').val()
|
||||
switchContent('search')
|
||||
|
||||
if (key == 13) {
|
||||
if (key === 13) {
|
||||
initSearch()
|
||||
return false
|
||||
}
|
||||
@ -31,12 +31,12 @@ function initSearch () {
|
||||
$('#searchalbums').hide()
|
||||
$('#searchtracks').hide()
|
||||
|
||||
if (searchService != 'all') {
|
||||
if (searchService !== 'all') {
|
||||
mopidy.library.search({'query': {any: [value]}, 'uris': [searchService + ':']}).then(processSearchResults, console.error)
|
||||
} else {
|
||||
mopidy.getUriSchemes().then(function (schemes) {
|
||||
var query = {},
|
||||
uris = []
|
||||
var query = {}
|
||||
var uris = []
|
||||
|
||||
var regexp = $.map(schemes, function (scheme) {
|
||||
return '^' + scheme + ':'
|
||||
@ -79,9 +79,10 @@ function processSearchResults (resultArr) {
|
||||
// Merge results from different backends.
|
||||
// TODO should of coures have multiple tables
|
||||
var results = {'tracks': [], 'artists': [], 'albums': []}
|
||||
var j, emptyResult = true
|
||||
var i, j
|
||||
var emptyResult = true
|
||||
|
||||
for (var i = 0; i < resultArr.length; i++) {
|
||||
for (i = 0; i < resultArr.length; i++) {
|
||||
if (resultArr[i].tracks) {
|
||||
for (j = 0; j < resultArr[i].tracks.length; j++) {
|
||||
results.tracks.push(resultArr[i].tracks[j])
|
||||
@ -137,7 +138,7 @@ function processSearchResults (resultArr) {
|
||||
var pattern = '<li><a href="#" onclick="return showArtist(this.id)" id={id}><i class="{class}"></i> <strong>{name}</strong></a></li>'
|
||||
var tokens
|
||||
|
||||
for (var i = 0; i < results.artists.length; i++) {
|
||||
for (i = 0; i < results.artists.length; i++) {
|
||||
tokens = {
|
||||
'id': results.artists[i].uri,
|
||||
'name': results.artists[i].name,
|
||||
@ -145,7 +146,7 @@ function processSearchResults (resultArr) {
|
||||
}
|
||||
|
||||
// Add 'Show all' item after a certain number of hits.
|
||||
if (i == 4 && results.artists.length > 5) {
|
||||
if (i === 4 && results.artists.length > 5) {
|
||||
child += theme(showMorePattern, {'count': results.artists.length - i})
|
||||
pattern = pattern.replace('<li>', '<li class="overflow">')
|
||||
}
|
||||
@ -163,7 +164,7 @@ function processSearchResults (resultArr) {
|
||||
pattern += '<p data-role="desc">{artistName}</p>'
|
||||
pattern += '</a></li>'
|
||||
|
||||
for (var i = 0; i < results.albums.length; i++) {
|
||||
for (i = 0; i < results.albums.length; i++) {
|
||||
tokens = {
|
||||
'albumId': results.albums[i].uri,
|
||||
'albumName': results.albums[i].name,
|
||||
@ -172,7 +173,7 @@ function processSearchResults (resultArr) {
|
||||
'class': getMediaClass(results.albums[i].uri)
|
||||
}
|
||||
if (results.albums[i].artists) {
|
||||
for (var j = 0; j < results.albums[i].artists.length; j++) {
|
||||
for (j = 0; j < results.albums[i].artists.length; j++) {
|
||||
if (results.albums[i].artists[j].name) {
|
||||
tokens.artistName += results.albums[i].artists[j].name + ' '
|
||||
}
|
||||
@ -182,7 +183,7 @@ function processSearchResults (resultArr) {
|
||||
tokens.artistName += '(' + tokens.albumYear + ')'
|
||||
}
|
||||
// Add 'Show all' item after a certain number of hits.
|
||||
if (i == 4 && results.albums.length > 5) {
|
||||
if (i === 4 && results.albums.length > 5) {
|
||||
child += theme(showMorePattern, {'count': results.albums.length - i})
|
||||
pattern = pattern.replace('<li>', '<li class="overflow">')
|
||||
}
|
||||
@ -258,7 +259,7 @@ function showTracklist (uri) {
|
||||
updatePlayIcons(uri)
|
||||
$('#playlistslist li a').each(function () {
|
||||
$(this).removeClass('playlistactive')
|
||||
if (this.id == uri) {
|
||||
if (this.id === uri) {
|
||||
$(this).addClass('playlistactive')
|
||||
}
|
||||
})
|
||||
@ -333,7 +334,7 @@ function getSearchSchemes () {
|
||||
$('#selectSearchService').append(new Option('All services', 'all'))
|
||||
for (var i = 0; i < schemesArray.length; i++) {
|
||||
for (var j = 0; j < uriHumanList.length; j++) {
|
||||
if (uriHumanList[j][0] == schemesArray[i].toLowerCase()) {
|
||||
if (uriHumanList[j][0] === schemesArray[i].toLowerCase()) {
|
||||
$('#selectSearchService').append(new Option(uriHumanList[j][1], schemesArray[i]))
|
||||
}
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ function processCurrentposition (data) {
|
||||
* process results playstate
|
||||
*********************************************************/
|
||||
function processPlaystate (data) {
|
||||
if (data == 'playing') {
|
||||
if (data === 'playing') {
|
||||
setPlayState(true)
|
||||
} else {
|
||||
setPlayState(false)
|
||||
@ -86,7 +86,9 @@ function processBrowseDir (resultArr) {
|
||||
|
||||
$('#browselist').empty()
|
||||
|
||||
var child = '', rooturi = '', uri = resultArr[0].uri
|
||||
var child = ''
|
||||
var rooturi = ''
|
||||
var uri = resultArr[0].uri
|
||||
|
||||
// check root uri
|
||||
// find last : or / (spltting the result)
|
||||
@ -96,7 +98,7 @@ function processBrowseDir (resultArr) {
|
||||
|
||||
var lastindex = (colonindex > slashindex) ? colonindex : slashindex
|
||||
rooturi = uri.slice(0, lastindex)
|
||||
if (resultArr[0].type == 'track') {
|
||||
if (resultArr[0].type === 'track') {
|
||||
rooturi = rooturi.replace(':track:', ':directory:')
|
||||
}
|
||||
colonindex = rooturi.lastIndexOf(':')
|
||||
@ -112,7 +114,7 @@ function processBrowseDir (resultArr) {
|
||||
browseTracks = []
|
||||
for (var i = 0, index = 0; i < resultArr.length; i++) {
|
||||
iconClass = getMediaClass(resultArr[i].uri)
|
||||
if (resultArr[i].type == 'track') {
|
||||
if (resultArr[i].type === 'track') {
|
||||
// console.log(resultArr[i]);
|
||||
mopidy.library.lookup({'uris': [resultArr[i].uri]}).then(function (resultDict) {
|
||||
var lookupUri = Object.keys(resultDict)[0]
|
||||
@ -127,7 +129,7 @@ function processBrowseDir (resultArr) {
|
||||
index++
|
||||
} else {
|
||||
if (browseStack.length > 0) {
|
||||
iconClass = "fa fa-folder-o"
|
||||
iconClass = 'fa fa-folder-o'
|
||||
}
|
||||
child += '<li><a href="#" onclick="return getBrowseDir(this.id);" id="' + resultArr[i].uri +
|
||||
'""><h1 class="trackname"><i class="' + iconClass + '"></i> ' + resultArr[i].name + '</h1></a></li>'
|
||||
@ -156,7 +158,9 @@ function processGetPlaylists (resultArr) {
|
||||
$('#playlistslist').empty()
|
||||
return
|
||||
}
|
||||
var tmp = '', favourites = '', starred = ''
|
||||
var tmp = ''
|
||||
var favourites = ''
|
||||
var starred = ''
|
||||
|
||||
for (var i = 0; i < resultArr.length; i++) {
|
||||
var li_html = '<li><a href="#" onclick="return showTracklist(this.id);" id="' + resultArr[i].uri + '">'
|
||||
|
||||
@ -25,7 +25,7 @@ function timerCallback (position, duration, isRunning) {
|
||||
|
||||
if (mopidy && position > 0) {
|
||||
// Mopidy and timer are both initialized.
|
||||
if (callbackHeartbeats-- == 1) {
|
||||
if (callbackHeartbeats-- === 1) {
|
||||
// Get time position from Mopidy on every nth callback until
|
||||
// synced.
|
||||
mopidy.playback.getTimePosition().then(
|
||||
@ -38,8 +38,8 @@ function timerCallback (position, duration, isRunning) {
|
||||
}
|
||||
|
||||
function updateTimers (position, duration, isRunning) {
|
||||
var ready = !(duration == Infinity && position === 0 && !isRunning) // Timer has been properly initialized.
|
||||
var streaming = (duration == Infinity && position > 0) // Playing a stream.
|
||||
var ready = !(duration === Infinity && position === 0 && !isRunning) // Timer has been properly initialized.
|
||||
var streaming = (duration === Infinity && position > 0) // Playing a stream.
|
||||
var ok = synced && isRunning // Normal operation.
|
||||
var syncing = !synced && isRunning // Busy syncing.
|
||||
|
||||
@ -88,7 +88,7 @@ function syncTimer (current, target) {
|
||||
if (drift <= 500) {
|
||||
syncsLeft--
|
||||
// Less than 500ms == in sync.
|
||||
if (++consecutiveSyncs == 2) {
|
||||
if (++consecutiveSyncs === 2) {
|
||||
// Need at least two consecutive syncs to know that Mopidy
|
||||
// is progressing playback and we are in sync.
|
||||
synced = true
|
||||
@ -133,7 +133,7 @@ function delay_exponential (base, growthFactor, attempts) {
|
||||
0 and 1 will be used as the base.
|
||||
Base must be greater than 0.
|
||||
*/
|
||||
if (base == 'rand') {
|
||||
if (base === 'rand') {
|
||||
base = Math.random()
|
||||
}
|
||||
beats = base * (Math.pow(growthFactor, (attempts - 1)))
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
CACHE MANIFEST
|
||||
|
||||
# 2016-02-29:v1
|
||||
# 2016-03-05:v1
|
||||
|
||||
NETWORK:
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user