44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
import React from 'react';
|
|
import PropTypes from 'prop-types';
|
|
import { Link, withRouter } from 'react-router-dom';
|
|
import reduxLang from '../../middleware/lang';
|
|
import animateScrollTo from 'animated-scroll-to';
|
|
|
|
|
|
const MenuNavItem = ({ to, name, isEnabled, navitem, toggleMenu, t, location, isPreLaunch }) => {
|
|
if (isPreLaunch) {
|
|
const navitems_urls = { contribute: '/mitmachen', about: '/info' };
|
|
|
|
navitems_urls.contribute = 'pre-launch-contribute-form';
|
|
navitems_urls.about = 'pre-launch-info';
|
|
|
|
return (
|
|
<div className='MenuNavItem medium-text'>
|
|
<a
|
|
href={`#${navitems_urls[navitem]}`}
|
|
className={location.pathname.includes(navitems_urls[navitem]) ? 'active' : ''}
|
|
onClick={() => {
|
|
animateScrollTo(document.getElementById(navitems_urls[navitem]));
|
|
toggleMenu();
|
|
}}
|
|
>
|
|
{t(navitem)}
|
|
</a>
|
|
</div>
|
|
);
|
|
}
|
|
return isEnabled ? (
|
|
<div className='MenuNavItem medium-text'>
|
|
<a href={to} className={location.pathname.includes(to) ? 'active' : ''} onClick={toggleMenu}>{name}</a>
|
|
</div>
|
|
) : null;
|
|
|
|
};
|
|
MenuNavItem.propTypes = {
|
|
navitem: PropTypes.string.isRequired,
|
|
t: PropTypes.func.isRequired,
|
|
location: PropTypes.object.isRequired
|
|
};
|
|
|
|
export default reduxLang('AppMenu')(withRouter(MenuNavItem));
|