X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=skyquake%2Fplugins%2Flaunchpad%2Fsrc%2FrecordViewer%2FrecordCard.jsx;h=06110f766bcc314643063f3a128d3f227281a501;hb=03156e335275de1dafbc2a816e98006afdf249bf;hp=ea3eb2f2a2616aa6fe5e510aa3a7761e18f1fc89;hpb=4ef8c40c2c013c21f5487330daeab2561ba25fb3;p=osm%2FUI.git diff --git a/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx b/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx index ea3eb2f2a..06110f766 100644 --- a/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx +++ b/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx @@ -35,9 +35,14 @@ import LaunchpadFleetStore from '../launchpadFleetStore.js'; import _forEach from 'lodash/forEach'; import Prism from 'prismjs'; import 'prismjs/themes/prism.css'; +import SkyquakeComponent from 'widgets/skyquake_container/skyquakeComponent.jsx'; +import {SkyquakeRBAC, isRBACValid} from 'widgets/skyquake_rbac/skyquakeRBAC.jsx'; +import ROLES from 'utils/roleConstants.js'; -export default class RecordCard extends React.Component { +const PROJECT_ROLES = ROLES.PROJECT; + +class RecordCard extends React.Component { constructor(props) { super(props) } @@ -77,6 +82,8 @@ export default class RecordCard extends React.Component { let notice = null; + let hasAccess = isRBACValid(this.context.userProfile, [PROJECT_ROLES.LCM_ADMIN, PROJECT_ROLES.PROJECT_ADMIN]); + switch(this.props.type) { case 'vnfr' : cardData = this.props.data[0]; @@ -86,7 +93,7 @@ export default class RecordCard extends React.Component { if (displayConfigPrimitives) { configPrimitiveComponent = (
- + {/* */}
@@ -143,10 +150,12 @@ export default class RecordCard extends React.Component { function buildProperties(obj) { let p = []; _forEach(obj, function(v, k) { + if (!v) { + return null; + } p.push(
-
{k}
+
{k}
{(v.constructor.name == 'String' || v.constructor.name == 'Number') ? v : buildProperties(v)}
) @@ -154,9 +163,9 @@ export default class RecordCard extends React.Component { return p; } volumesHTML.push( -
+
- VOLUME + VOLUME ({vdur['name']})
{ @@ -191,7 +200,7 @@ export default class RecordCard extends React.Component { if (displayConfigPrimitives) { configPrimitiveComponent = (
- +
JOB LIST @@ -247,7 +256,7 @@ export default class RecordCard extends React.Component { let metricsAndParams = []; - let nfviMetrics = ; + let nfviMetrics = null //; metricsAndParams.push(
{components.map(function(c, k) { return
{c.title}{c.component}
@@ -329,7 +338,7 @@ export default class RecordCard extends React.Component { if (this.props.type == 'nsr') { primitivesTabTitle = 'Service Primitive'; } else if (this.props.type == 'vnfr') { - primitivesTabTitle = 'Service Primitive' + primitivesTabTitle = 'Config Primitive' } tabList.push( @@ -369,11 +378,11 @@ export default class RecordCard extends React.Component { consoleUrlsTabTitle = 'VDU Console Links'; tabList.push( - {consoleUrlsTabTitle} + {consoleUrlsTabTitle} ); tabPanels.push( - +
{consoleUrlsComponent}
@@ -419,3 +428,9 @@ RecordCard.defaultProps = { isLoading: true, jobData: [] } +RecordCard.contextTypes = { + router: React.PropTypes.object, + userProfile: React.PropTypes.object +}; + +export default SkyquakeComponent(RecordCard);