import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; import { translate } from 'react-i18next'; import { Row, Col, Progress } from 'reactstrap'; export class Restrictions extends React.Component { static propTypes = { t: PropTypes.func.isRequired, restrictions: PropTypes.object, restrictionsIds: PropTypes.array }; getBarColor(percentage) { return percentage > 50 ? percentage > 75 ? 'danger' : 'warning' : 'success'; } render() { const { restrictions, restrictionsIds, t } = this.props; if (!restrictions) return ''; let searchLicense = null; let searchLicenseLimit = null; let saveLicense = null; let saveLicenseLimit = null; let alerts = null; let alertsLimit = null; let webFeeds = null; let webFeedsLimit = null; let isAlerts = false; restrictionsIds.map((id) => { const restriction = restrictions[id]; if (id === 'alerts') { alerts = restriction.current; alertsLimit = restriction.limit; isAlerts = true; } if (id === 'searchesPerDay') { searchLicense = restriction.current; searchLicenseLimit = restriction.limit; } if (id === 'savedFeeds') { saveLicense = restriction.current; saveLicenseLimit = restriction.limit; } if (id === 'webFeeds') { webFeeds = restriction.current; webFeedsLimit = restriction.limit; } }); const alertPerc = (alerts * 100) / alertsLimit; const searchPerc = (searchLicense * 100) / searchLicenseLimit; const feedPerc = (saveLicense * 100) / saveLicenseLimit; const webFeedPerc = (webFeeds * 100) / webFeedsLimit; return ( {isAlerts ? (
{t('restrictions.alertLicenses')}
{t('restrictions.perMonth')}
{alertsLimit}
{alerts} / {alertsLimit}
{/* {restrictions.newsletters && (
{t('restrictions.totalNewsltter')}
{restrictions.newsletters.limit}
{restrictions.newsletters.current} /{' '} {restrictions.newsletters.limit}
)} */}
{t('restrictions.webfeedLicenses')}
{t('restrictions.perMonth')}
{webFeedsLimit}
{webFeeds} / {webFeedsLimit}
) : (
{t('restrictions.searchLicenses')}
{t('restrictions.perDay')}
{searchLicenseLimit}
{searchLicense} / {searchLicenseLimit}
{t('restrictions.feedLicenses')}
{t('restrictions.perMonth')}
{saveLicenseLimit}
{saveLicense} / {saveLicenseLimit}
)}
); } } export default translate(['tabsContent'], { wait: true })(Restrictions);