blob: 290f0fecca7867912f05bd7e6e538610b99eb2d2 [file] [log] [blame]
/*
*
* Copyright 2016 RIFT.IO Inc
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
import React from 'react';
export default class LaunchpadBreadcrumbs extends React.Component {
constructor(props) {
super(props);
this.current = props.current;
}
componentDidMount() {
}
componentWillReceiveProps(props) {
}
breadcrumbItem(url, name, isCurrent) {
if (isCurrent) {
return (<span className="current">{name}</span>);
} else {
return (<a href={url} onClick={this.props.clickHandler}>{name}</a>);
}
}
render() {
let mgmtDomainName = window.location.hash.split('/')[2];
let nsrId = window.location.hash.split('/')[3];
let url_base = '#/launchpad/' + mgmtDomainName + '/' + nsrId;
let html = (
<div className="header-nav">
<a href={'#/launchpad/' + mgmtDomainName} onClick={this.props.clickHandler}>DASHBOARD</a>
<span className="spacer"> > </span>
{this.breadcrumbItem(url_base+'/detail', 'Viewport', (this.props.current == 'viewport'))}
<span className="spacer"> | </span>
{this.breadcrumbItem(url_base+'/topology', 'Topology', (this.props.current == 'topology' ))}
<span className="spacer"> | </span>
{this.breadcrumbItem(url_base+'/topologyL2', 'Topology L2', (this.props.current == 'topologyL2' ))}
<span className="spacer"> | </span>
{this.breadcrumbItem(url_base+'/topologyL2Vm', 'Topology L2Vm', (this.props.current == 'topologyL2Vm'))}
</div>
);
return html;
}
}