diff --git a/jam-ui/src/components/jamtracks/JKJamTrackPlayer copy 2.js b/jam-ui/src/components/jamtracks/JKJamTrackPlayer copy 2.js deleted file mode 100644 index 6843d5f66..000000000 --- a/jam-ui/src/components/jamtracks/JKJamTrackPlayer copy 2.js +++ /dev/null @@ -1,101 +0,0 @@ -import React, { useState, useEffect, useMemo } from 'react'; -import Select from 'react-select'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { Row, Col } from 'reactstrap'; -import PropTypes from 'prop-types'; -import { markMixdownActive } from '../../helpers/rest'; -import useJamTrackAudio from '../../hooks/useJamTrackAudio'; - -const JKJamTrackPlayer = ({ jamTrack }) => { - const [mixes, setMixes] = useState([]); - const [options, setOptions] = useState([]); - const [selectedMix, setSelectedMix] = useState(null); - const { audioUrls, loadJamTrack } = useJamTrackAudio(jamTrack); - - const handleChange = selectedOption => { - const mix = mixes.find(mix => mix.value === selectedOption.value); - setSelectedMix(mix); - }; - - useEffect(() => { - if (jamTrack) { - console.log('_JamTrack_ jamTrack', jamTrack); - const _opts = jamTrack.mixdowns.map(mix => ({ value: mix.id, label: mix.name })); - _opts.unshift({ value: 'original', label: 'Original' }); - setOptions(_opts); - - //set the default mix to the original - const activeMix = jamTrack.mixdowns.find(mix => mix.id === jamTrack.last_mixdown_id) - - console.log('_JamTrack_ activeMix', activeMix); - - setSelectedMix(activeMix); - } - }, [jamTrack]); - - const activateMasterTrack = async () => { - console.log('playing original'); - await markMixdownActive({ id: jamTrack.id, mixdown_id: null }); - await loadJamTrack(); - }; - - const activateCustomMix = async () => { - console.log('playing mix', selectedMix.value); - try { - await markMixdownActive({ id: jamTrack.id, mixdown_id: selectedMix.value }); - await loadJamTrack(); - }catch(error){ - console.log('Error when activating custom mix', error); - } - - }; - - useEffect(() => { - if (!selectedMix) { - return; - } - - console.log('_JamTrack_ selectedMix', selectedMix); - - if (selectedMix.value === 'original') { - //console.log('_JAMTRACK_ activating master track'); - activateMasterTrack().then(() => { - //TODO: commiunicate with the client back end. Following is copied from the Rails front end - //SessionActions.mixdownActive({id:null}) - }); - } else { - //console.log('_JAMTRACK_ activating custom mix:', selectedMix); - activateCustomMix().then(() => { - //TODO: commiunicate with the client back end. Following is copied from the Rails front end - //context.jamClient.JamTrackStopPlay(); - //SessionActions.mixdownActive(mixdown) - }); - } - }, [selectedMix]); - - return ( - <> - - {/* - -
- { playing && } - { !playing && } - -
- - -
- {trackCurrentTime} - - {trackDuration} -
- - -
*/} - - - - - - - ); -}; - -JKJamTrackPlayer.propTypes = { - jamTrack: PropTypes.object.isRequired, - -}; - -export default JKJamTrackPlayer; diff --git a/jam-ui/src/components/jamtracks/JKJamTrackPreview.js b/jam-ui/src/components/jamtracks/JKJamTrackPreview.js index 707eeabc7..0f3a5045f 100644 --- a/jam-ui/src/components/jamtracks/JKJamTrackPreview.js +++ b/jam-ui/src/components/jamtracks/JKJamTrackPreview.js @@ -1,5 +1,5 @@ import React, { Fragment, useState } from 'react'; -import { Row, Col, Container } from 'reactstrap'; +import { Row, Col } from 'reactstrap'; import JKJamTrackTrack from './JKJamTrackTrack'; import PropTypes from 'prop-types'; import { useResponsive } from '@farfetch/react-context-responsive'; diff --git a/jam-ui/src/components/jamtracks/JKJamTrackResourceLinks.js b/jam-ui/src/components/jamtracks/JKJamTrackResourceLinks.js index e075f2c0e..7175925bb 100644 --- a/jam-ui/src/components/jamtracks/JKJamTrackResourceLinks.js +++ b/jam-ui/src/components/jamtracks/JKJamTrackResourceLinks.js @@ -1,5 +1,6 @@ import React from 'react'; import { useTranslation } from 'react-i18next'; +import { Link } from 'react-router-dom'; const JKJamTrackResourceLinks = ({jamTrack}) => { const { t } = useTranslation('jamtracks'); @@ -23,7 +24,7 @@ const JKJamTrackResourceLinks = ({jamTrack}) => {
- + {t('jamtrack.help_resources.jamtracks_home.title')}
@@ -31,14 +32,17 @@ const JKJamTrackResourceLinks = ({jamTrack}) => {
- {t('jamtrack.help_resources.see_more.title')} - + */} + + {t('jamtrack.help_resources.see_more.title')} +
{t('jamtrack.help_resources.see_more.description')}
diff --git a/jam-ui/src/components/jamtracks/JKJamTracksFilter.js b/jam-ui/src/components/jamtracks/JKJamTracksFilter.js index 587b7dc98..38cc170f2 100644 --- a/jam-ui/src/components/jamtracks/JKJamTracksFilter.js +++ b/jam-ui/src/components/jamtracks/JKJamTracksFilter.js @@ -1,5 +1,6 @@ import React, { useState, useEffect } from 'react'; import { Link } from 'react-router-dom'; +import { useBrowserQuery } from '../../context/BrowserQuery'; import { Card, CardBody, Row, Col } from 'reactstrap'; import FalconCardHeader from '../common/FalconCardHeader'; import { useTranslation } from 'react-i18next'; @@ -24,6 +25,9 @@ const JKJamTracksFilter = () => { const PER_PAGE = 10; const { shoppingCart } = useShoppingCart(); const { greaterThan } = useResponsive(); + const queryString = useBrowserQuery(); + const query = queryString.get('query'); + const artist = queryString.get('artist'); useEffect(() => { if (selected) { @@ -31,6 +35,17 @@ const JKJamTracksFilter = () => { } }, [selected]); + useEffect(() => { + if(query && !artist) { + //setAutoCompleteInputValue(query); + handleOnEnter(query); + } + if(artist && !query) { + //setAutoCompleteInputValue(artist); + handleOnEnter(artist); + } + }, [query]); + const queryOptions = selected => { const options = { per_page: PER_PAGE,