diff options
Diffstat (limited to 'webapp/components/admin_console/admin_sidebar_section.jsx')
-rw-r--r-- | webapp/components/admin_console/admin_sidebar_section.jsx | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/webapp/components/admin_console/admin_sidebar_section.jsx b/webapp/components/admin_console/admin_sidebar_section.jsx index 0492745ca..56e520629 100644 --- a/webapp/components/admin_console/admin_sidebar_section.jsx +++ b/webapp/components/admin_console/admin_sidebar_section.jsx @@ -10,6 +10,7 @@ export default class AdminSidebarSection extends React.Component { return { name: React.PropTypes.string.isRequired, title: React.PropTypes.node.isRequired, + type: React.PropTypes.string, parentLink: React.PropTypes.string, subsection: React.PropTypes.bool, children: React.PropTypes.arrayOf(React.PropTypes.element), @@ -59,20 +60,39 @@ export default class AdminSidebarSection extends React.Component { className += ' sidebar-subsection'; } - return ( - <li className={className}> - <Link + let sidebarItem = ( + <Link + className={`${className}-title`} + activeClassName={`${className}-title ${className}-title--active`} + onlyActiveOnIndex={this.props.onlyActiveOnIndex} + onClick={this.handleClick} + to={link} + > + <span className={`${className}-title__text`}> + {this.props.title} + </span> + {this.props.action} + </Link> + ); + + if (this.props.type === 'text') { + sidebarItem = ( + <div className={`${className}-title`} activeClassName={`${className}-title ${className}-title--active`} onlyActiveOnIndex={this.props.onlyActiveOnIndex} - onClick={this.handleClick} - to={link} > <span className={`${className}-title__text`}> {this.props.title} </span> {this.props.action} - </Link> + </div> + ); + } + + return ( + <li className={className}> + {sidebarItem} {clonedChildren} </li> ); |