diff --git a/client/src/components/EventList/EventCard/EventCard.css b/client/src/components/EventList/EventCard/EventCard.css new file mode 100644 index 0000000..20fc5ae --- /dev/null +++ b/client/src/components/EventList/EventCard/EventCard.css @@ -0,0 +1,45 @@ +.read-more-state { + display: none; +} + +.read-more-target { + opacity: 0; + max-height: 0; + font-size: 0; + transition: 0.25s ease; +} + +.read-more-state:checked ~ .read-more-wrap .read-more-target { + opacity: 1; + font-size: inherit; + max-height: 999em; +} + +.dotspan { + opacity: 1; +} + +.read-more-state:checked ~ .read-more-wrap .dotspan { + display: none; +} + +.read-more-state ~ .read-more-trigger:before { + content: 'read more'; + color: #0d7ec4; +} + +.read-more-state:checked ~ .read-more-trigger:before { + content: 'read less'; + color: #0d7ec4; +} + +.read-more-trigger { + cursor: pointer; + display: block; + padding: 0 0.5em; + color: #666; + height: 30px; + font-size: 0.9em; + line-height: 2; + text-align: right; +} diff --git a/client/src/components/EventList/EventCard/EventCard.js b/client/src/components/EventList/EventCard/EventCard.js index b7ebdbe..d836ac6 100644 --- a/client/src/components/EventList/EventCard/EventCard.js +++ b/client/src/components/EventList/EventCard/EventCard.js @@ -11,13 +11,19 @@ import { import moment from 'moment'; import { Link } from 'react-router-dom'; +import './EventCard.css'; + const DATE_FORMAT = 'LLLL'; const EventCard = props => { const card = props.event; + + const startingDesc = card.description.slice(0, 35); + const remainingDesc = card.description.slice(35, card.description.length); + return ( - - + + { alt="Card image cap" height="180" /> - - {card.title} - {card.description} - - - {moment(card.startDatetime).format(DATE_FORMAT)} - - - - - + + + {card.title} + {startingDesc.length === 35 && ( + + )} + + {startingDesc} + {startingDesc.length === 35 && ( +  ... + )} + {remainingDesc} + + + ); };