86 lines
2.7 KiB
JavaScript
86 lines
2.7 KiB
JavaScript
import React, { Fragment, useEffect, useMemo, useState } from 'react';
|
|
import { Col, Row } from 'reactstrap';
|
|
import { Link } from 'react-router-dom';
|
|
import JKRegistrationForm from '../JKRegistrationForm';
|
|
import { useTranslation } from 'react-i18next';
|
|
import { useLocation } from 'react-router-dom';
|
|
import { getJamTrack } from '../../../helpers/rest';
|
|
import { useAuth } from '../../../context/UserAuth';
|
|
|
|
const Registration = () => {
|
|
const { t } = useTranslation('auth');
|
|
const search = useLocation().search;
|
|
const [jamTrack, setJamTrack] = useState(null);
|
|
const [jamTrackArtistName, setJamTrackArtistName] = useState("");
|
|
const { currentUser } = useAuth();
|
|
|
|
//coming to signup page after clicking on jamtrack or artist
|
|
useEffect(() => {
|
|
|
|
if (!search) return;
|
|
|
|
const params = new URLSearchParams(search);
|
|
|
|
|
|
const jamtrackId = params.get('JamTrackId');
|
|
const artistName = params.get('JamTrackArtistName');
|
|
|
|
console.log('_DEBUG_ jamtrackId', jamtrackId);
|
|
|
|
|
|
if (artistName && artistName !== "") {
|
|
setJamTrackArtistName(artistName);
|
|
}else if (jamtrackId) {
|
|
const fetchJamTrack = async (id) => {
|
|
try {
|
|
const response = await getJamTrack({id});
|
|
const jamTrack = await response.json();
|
|
setJamTrack(jamTrack);
|
|
} catch (error) {
|
|
console.error(error);
|
|
}
|
|
}
|
|
fetchJamTrack(jamtrackId);
|
|
|
|
// if (jt && jt.allow_free && currentUser && currentUser.show_free_jamtrack) {
|
|
// setJamTrack(jt);
|
|
// }
|
|
}
|
|
}, [search]);
|
|
|
|
const pageTitle = useMemo(() => {
|
|
if (jamTrack || jamTrackArtistName) {
|
|
return t('signupForm.jamtrack_signup_title');
|
|
}
|
|
return t('signupForm.signup_title');
|
|
}, [jamTrack, jamTrackArtistName]);
|
|
|
|
return (
|
|
<Fragment>
|
|
<Row className="text-left mb-3">
|
|
<Col>
|
|
<h5 id="modalLabel">{pageTitle}</h5>
|
|
{jamTrack?.id}
|
|
</Col>
|
|
</Row>
|
|
<JKRegistrationForm jamTrack={jamTrack} jamTrackArtistName={jamTrackArtistName} />
|
|
<Row className='justify-content-center mb-2'>
|
|
<Col xs="auto">
|
|
<p className="fs--1 text-600">
|
|
JamKazam <Link to="/public/terms">{t('terms_of_service', { ns: 'common' })}</Link> {t('and', { ns: 'common' })} <Link to="/public/privacy">{t('privacy_policy', { ns: 'common' })}</Link> {t('apply', { ns: 'common' })}.
|
|
</p>
|
|
</Col>
|
|
</Row>
|
|
<Row className='justify-content-center'>
|
|
<Col xs="auto">
|
|
<p className="fs--1 text-600">
|
|
{t('signupForm.alreadyHaveAccount')} <Link to="/authentication/basic/login">{t('signin')}</Link>
|
|
</p>
|
|
</Col>
|
|
</Row>
|
|
</Fragment>
|
|
);
|
|
};
|
|
|
|
export default Registration;
|