X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Flaunchpad%2Fsrc%2FrecordViewer%2FrecordCard.jsx;h=06110f766bcc314643063f3a128d3f227281a501;hp=e3c3dadceea8fe93e77b25f15d506dc531fe737a;hb=03156e335275de1dafbc2a816e98006afdf249bf;hpb=e29efc315df33d546237e270470916e26df391d6;ds=sidebyside diff --git a/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx b/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx index e3c3dadce..06110f766 100644 --- a/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx +++ b/skyquake/plugins/launchpad/src/recordViewer/recordCard.jsx @@ -1,6 +1,6 @@ /* - * + * * Copyright 2016 RIFT.IO Inc * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -31,7 +31,18 @@ import ParseMP from '../monitoring_params/monitoringParamComponents.js'; import PlacementGroupsInfo from './placementGroupsInfo.jsx'; import JobListCard from '../launchpad_card/jobListCard.jsx'; import NSVirtualLinks from '../virtual_links/nsVirtualLinks.jsx'; -export default class RecordCard extends React.Component { +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'; + +const PROJECT_ROLES = ROLES.PROJECT; + +class RecordCard extends React.Component { constructor(props) { super(props) } @@ -40,7 +51,13 @@ export default class RecordCard extends React.Component { // console.log('Selected tab is', index, 'last index is', last); } + openConsole = (url, event) => { + event.preventDefault(); + LaunchpadFleetStore.getVDUConsoleLink(url); + } + render(){ + let self = this; let html; let content; let card; @@ -58,10 +75,15 @@ export default class RecordCard extends React.Component { let displayNSVirtualLinks = false; let nsVirtualLinksProps = {}; let nsVirtualLinksComponent = null; - + let displayVolumesTab = false; + let volumesHTML = []; let tabList = []; let tabPanels = []; + 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]; @@ -71,7 +93,7 @@ export default class RecordCard extends React.Component { if (displayConfigPrimitives) { configPrimitiveComponent = (
+ //
+ //
+ function buildProperties(obj) {
+ let p = [];
+ _forEach(obj, function(v, k) {
+ if (!v) {
+ return null;
+ }
+ p.push(
+