mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-02 15:38:15 +00:00
add type & lang to custom nav (#4347)
This commit is contained in:
@@ -2,7 +2,7 @@ import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Link } from '@reach/router';
|
||||
import { Badge } from 'reactstrap';
|
||||
import { gettext, siteRoot, canPublishRepo, canAddRepo, canGenerateShareLink, canGenerateUploadLink, canInvitePeople, dtableWebServer } from '../utils/constants';
|
||||
import { gettext, siteRoot, canPublishRepo, canAddRepo, canGenerateShareLink, canGenerateUploadLink, canInvitePeople, dtableWebServer, lang } from '../utils/constants';
|
||||
import { seafileAPI } from '../utils/seafile-api';
|
||||
import { Utils } from '../utils/utils';
|
||||
import toaster from './toast';
|
||||
@@ -167,14 +167,33 @@ class MainSideNav extends React.Component {
|
||||
renderCustomNavItems() {
|
||||
return (
|
||||
customNavItems.map((item, idx) => {
|
||||
return (
|
||||
<li key={idx} className="nav-item">
|
||||
<a href={item.link} className="nav-link ellipsis" title={item.desc}>
|
||||
<span className={item.icon} aria-hidden="true"></span>
|
||||
<span className="nav-text">{item.desc}</span>
|
||||
</a>
|
||||
</li>
|
||||
);
|
||||
// if no item.lang, show
|
||||
// if has item.lang && system.lang in item.lang, show
|
||||
// other case hide
|
||||
if (item.hasOwnProperty('lang') && item.lang.indexOf(lang) == -1) return null;
|
||||
if (item.type === 'heading') {
|
||||
return (
|
||||
<h3 key={idx} className="sf-heading">{item.desc}</h3>
|
||||
);
|
||||
} else {
|
||||
return (
|
||||
<ul className="nav nav-pills flex-column nav-container">
|
||||
{
|
||||
item.map((nav, idx) => {
|
||||
if (nav.hasOwnProperty('lang') && nav.lang.indexOf(lang) == -1) return null;
|
||||
return (
|
||||
<li key={idx} className="nav-item">
|
||||
<a href={nav.link} className="nav-link ellipsis" title={nav.desc}>
|
||||
<span className={nav.icon} aria-hidden="true"></span>
|
||||
<span className="nav-text">{nav.desc}</span>
|
||||
</a>
|
||||
</li>
|
||||
);
|
||||
})
|
||||
}
|
||||
</ul>
|
||||
);
|
||||
}
|
||||
})
|
||||
);
|
||||
}
|
||||
@@ -276,8 +295,8 @@ class MainSideNav extends React.Component {
|
||||
</a>
|
||||
{this.renderSharedAdmin()}
|
||||
</li>
|
||||
{customNavItems && this.renderCustomNavItems()}
|
||||
</ul>
|
||||
{customNavItems && this.renderCustomNavItems()}
|
||||
</div>
|
||||
|
||||
{dtableWebServer &&
|
||||
|
Reference in New Issue
Block a user