AdminNavigation.jsx 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import React from 'react';
  2. import PropTypes from 'prop-types';
  3. import { withTranslation } from 'react-i18next';
  4. const AdminNavigation = (props) => {
  5. const { t, activeMenu } = props;
  6. return (
  7. <ul className="nav nav-pills nav-stacked">
  8. <li className={`${activeMenu === 'index' && 'active'}`}>
  9. <a href="/admin"><i className="icon-fw icon-home"></i> { t('Management Wiki Home') }</a>
  10. </li>
  11. <li className={`${activeMenu === 'app' && 'active'}`}>
  12. <a href="/admin/app"><i className="icon-fw icon-settings"></i> { t('App Settings') }</a>
  13. </li>
  14. <li className={`${activeMenu === 'security' && 'active'}`}>
  15. <a href="/admin/security"><i className="icon-fw icon-shield"></i> { t('security_settings') }</a>
  16. </li>
  17. <li className={`${activeMenu === 'markdown' && 'active'}`}>
  18. <a href="/admin/markdown"><i className="icon-fw icon-note"></i> { t('Markdown Settings') }</a>
  19. </li>
  20. <li className={`${activeMenu === 'customize' && 'active'}`}>
  21. <a href="/admin/customize"><i className="icon-fw icon-wrench"></i> { t('Customize') }</a>
  22. </li>
  23. <li className={`${activeMenu === 'importer' && 'active'}`}>
  24. <a href="/admin/importer"><i className="icon-fw icon-cloud-upload"></i> { t('Import Data') }</a>
  25. </li>
  26. <li className={`${activeMenu === 'export' && 'active'}`}>
  27. <a href="/admin/export"><i className="icon-fw icon-cloud-download"></i> { t('Export Archive Data') }</a>
  28. </li>
  29. <li className={`${activeMenu === 'notification' && 'active'}`}>
  30. <a href="/admin/notification"><i className="icon-fw icon-bell"></i> { t('Notification Settings') }</a>
  31. </li>
  32. <li className={`${(activeMenu === 'user' || activeMenu === 'externalaccount') && 'active'}`}>
  33. <a href="/admin/users"><i className="icon-fw icon-user"></i> { t('User_Management') }</a>
  34. </li>
  35. <li className={`${activeMenu === 'user-group' && 'active'}`}>
  36. <a href="/admin/user-groups"><i className="icon-fw icon-people"></i> { t('UserGroup Management') }</a>
  37. </li>
  38. <li className={`${activeMenu === 'search' && 'active'}`}>
  39. <a href="/admin/search"><i className="icon-fw icon-magnifier"></i> { t('Full Text Search Management') }</a>
  40. </li>
  41. </ul>
  42. );
  43. };
  44. AdminNavigation.propTypes = {
  45. t: PropTypes.func.isRequired, // i18next
  46. activeMenu: PropTypes.string.isRequired,
  47. };
  48. export default withTranslation()(AdminNavigation);