diff --git a/web/app/assets/javascripts/react-components/PopupMediaControls.js.jsx.coffee b/web/app/assets/javascripts/react-components/PopupMediaControls.js.jsx.coffee index 06e7d6535..b73105757 100644 --- a/web/app/assets/javascripts/react-components/PopupMediaControls.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/PopupMediaControls.js.jsx.coffee @@ -89,11 +89,13 @@ mixins.push(Reflux.listenTo(MediaPlaybackStore, 'onMediaStateChanged')) context.JK.checkbox($loop) $loop.on('ifChecked', () => - console.log("@props", @props) - MixerActions.loopChanged(@props.backingTracks[0].mixers.mixer, true) + logger.debug("@props", @props) + # it doesn't matter if you do personal or master, because backend just syncs both + MixerActions.loopChanged(@props.backingTracks[0].mixers.personal.mixer, true) ) $loop.on('ifUnchecked', () => - MixerActions.loopChanged(@props.backingTracks[0].mixers.mixer, false) + # it doesn't matter if you do personal or master, because backend just syncs both + MixerActions.loopChanged(@props.backingTracks[0].mixers.personal.mixer, false) ) @resizeWindow() diff --git a/web/app/assets/javascripts/react-components/SessionBackingTrack.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionBackingTrack.js.jsx.coffee index f94f96ff4..049234abd 100644 --- a/web/app/assets/javascripts/react-components/SessionBackingTrack.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionBackingTrack.js.jsx.coffee @@ -40,7 +40,7 @@ MixerActions = @MixerActions "backing-track" : true }) - pan = mixers.mixer.pan + pan = if mixers.mixer? then mixers.mixer?.pan else 0 panStyle = { transform: "rotate(#{pan}deg)" diff --git a/web/app/assets/javascripts/react-components/SessionJamTrack.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionJamTrack.js.jsx.coffee index fb5ce656b..7cbe3f6d6 100644 --- a/web/app/assets/javascripts/react-components/SessionJamTrack.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionJamTrack.js.jsx.coffee @@ -40,7 +40,7 @@ MixerActions = @MixerActions "jam-track" : true }) - pan = mixers.mixer.pan + pan = if mixers.mixer? then mixers.mixer?.pan else 0 panStyle = { transform: "rotate(#{pan}deg)" diff --git a/web/app/assets/javascripts/react-components/SessionMasterMix.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionMasterMix.js.jsx.coffee index 51a9be63a..8227a6e06 100644 --- a/web/app/assets/javascripts/react-components/SessionMasterMix.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionMasterMix.js.jsx.coffee @@ -8,6 +8,6 @@ MIX_MODES = context.JK.MIX_MODES - + ` }) \ No newline at end of file diff --git a/web/app/assets/javascripts/react-components/SessionMetronome.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionMetronome.js.jsx.coffee index 41bc7a8bf..5c34c0357 100644 --- a/web/app/assets/javascripts/react-components/SessionMetronome.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionMetronome.js.jsx.coffee @@ -31,7 +31,7 @@ MixerActions = @MixerActions "metronome" : true }) - pan = mixers.mixer.pan + pan = if mixers.mixer? then mixers.mixer?.pan else 0 panStyle = { transform: "rotate(#{pan}deg)" diff --git a/web/app/assets/javascripts/react-components/SessionOtherTrack.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionOtherTrack.js.jsx.coffee index c148cf198..e0148d343 100644 --- a/web/app/assets/javascripts/react-components/SessionOtherTrack.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionOtherTrack.js.jsx.coffee @@ -13,7 +13,9 @@ MixerActions = @MixerActions muting = $(e.currentTarget).is('.enabled') - MixerActions.mute([this.props.mixers.mixer, this.props.mixers.oppositeMixer], muting) + mixers = if this.props.tracks.length > 0 then this.props.tracks[0].mixers else {} + + MixerActions.mute([mixers.mixer], muting) render: () -> diff --git a/web/app/assets/javascripts/react-components/SessionRecordedTrack.js.jsx.coffee b/web/app/assets/javascripts/react-components/SessionRecordedTrack.js.jsx.coffee index 8034ae4cb..2d652a191 100644 --- a/web/app/assets/javascripts/react-components/SessionRecordedTrack.js.jsx.coffee +++ b/web/app/assets/javascripts/react-components/SessionRecordedTrack.js.jsx.coffee @@ -40,7 +40,7 @@ MixerActions = @MixerActions "recorded-track" : true }) - pan = mixers.mixer.pan + pan = if mixers.mixer? then mixers.mixer?.pan else 0 panStyle = { transform: "rotate(#{pan}deg)" diff --git a/web/app/assets/javascripts/react-components/helpers/MixerHelper.js.coffee b/web/app/assets/javascripts/react-components/helpers/MixerHelper.js.coffee index 403a9c202..065782ab9 100644 --- a/web/app/assets/javascripts/react-components/helpers/MixerHelper.js.coffee +++ b/web/app/assets/javascripts/react-components/helpers/MixerHelper.js.coffee @@ -505,6 +505,10 @@ MIX_MODES = context.JK.MIX_MODES; mixers = if mixMode == MIX_MODES.MASTER then @masterMixers else @personalMixers; for mixer in mixers + unless mixer? + logger.debug("empty mixer: ", mixers) + continue + if mixer.client_id == clientId for groupId in groupIds if mixer.group_id == groupId @@ -746,6 +750,7 @@ MIX_MODES = context.JK.MIX_MODES; if mixer? context.JK.VuHelpers.updateVU3(mixer, leftValue, leftClipping, rightValue, rightClipping) + ### if mixer if mixer.stereo # // stereo track diff --git a/web/app/assets/javascripts/react-components/mixins/SessionMyTracksMixin.js.coffee b/web/app/assets/javascripts/react-components/mixins/SessionMyTracksMixin.js.coffee index 937102629..3af65b420 100644 --- a/web/app/assets/javascripts/react-components/mixins/SessionMyTracksMixin.js.coffee +++ b/web/app/assets/javascripts/react-components/mixins/SessionMyTracksMixin.js.coffee @@ -12,18 +12,18 @@ context = window if session.inSession() participant = session.getParticipant(@app.clientId) - photoUrl = context.JK.resolveAvatarUrl(participant.user.photo_url); - - chatMixer = mixers.chatMixer - chat = null - if chatMixer - chat = - mixers: chatMixer - mode: @props.mode - photoUrl: photoUrl - if participant + photoUrl = context.JK.resolveAvatarUrl(participant.user.photo_url); + + chatMixer = mixers.chatMixer + chat = null + if chatMixer + chat = + mixers: chatMixer + mode: @props.mode + photoUrl: photoUrl + name = participant.user.name; for track in participant.tracks diff --git a/web/app/assets/javascripts/vuHelpers.js b/web/app/assets/javascripts/vuHelpers.js index 4a83917ff..e2173f6dd 100644 --- a/web/app/assets/javascripts/vuHelpers.js +++ b/web/app/assets/javascripts/vuHelpers.js @@ -217,9 +217,6 @@ var fqId = this.createQualifiedId(mixer) - if(mixer.group_id == 13) { - logger.debug("mixer", mixer) - } var registrations = this.registeredMixers[fqId] if (registrations) { var j;