import React from "react" import PropTypes from "prop-types" import { Map } from "immutable" import { connect } from "react-redux" import { addShowToWishlist, deleteShowFromWishlist } from "../../../actions/shows" import Tooltip from "react-bootstrap/Tooltip" import OverlayTrigger from "react-bootstrap/OverlayTrigger" export const trackHeader = (props) => { const trackedSeason = props.data.get("tracked_season"); const trackedEpisode = props.data.get("tracked_episode"); const imdbId = props.data.get("imdb_id"); const wishlisted = (trackedSeason !== null && trackedEpisode !== null); const handleClick = () => { if (wishlisted) { props.deleteShowFromWishlist(imdbId); } else { props.addShowToWishlist(imdbId); } } if (wishlisted) { const msg = (trackedSeason !== 0 && trackedEpisode !== 0) ? (

Show tracked from season {trackedSeason} episode {trackedEpisode}

) : (

Whole show tracked

); return ( {msg} Untrack the show ); } return (

Tracking inactive

handleClick(e)}> Track the whole show
); } trackHeader.propTypes = { data: PropTypes.instanceOf(Map), addShowToWishlist: PropTypes.func, deleteShowFromWishlist: PropTypes.func, }; export const TrackHeader = connect(null, { addShowToWishlist, deleteShowFromWishlist, })(trackHeader); export const trackButton = (props) => { const imdbId = props.data.get("show_imdb_id"); const season = props.data.get("season"); const episode = props.data.get("episode"); const tooltipId = `tooltip-${props.data.season}-${props.data.episode}`; const tooltip = ( Track show from here ); return ( props.addShowToWishlist(imdbId, season, episode)}> ); } trackButton.propTypes = { data: PropTypes.instanceOf(Map), addShowToWishlist: PropTypes.func, }; export const TrackButton = connect(null, {addShowToWishlist})(trackButton);