[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-ui / src / sdc-app / onboarding / licenseModel / entitlementPools / EntitlementPoolsListEditorView.jsx
index 52df102..07a6f21 100644 (file)
@@ -1,3 +1,18 @@
+/*!
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ *
+ * 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';
 
 import i18n from 'nfvo-utils/i18n/i18n.js';
@@ -6,10 +21,7 @@ import ListEditorView from 'nfvo-components/listEditor/ListEditorView.jsx';
 import ListEditorItemView from 'nfvo-components/listEditor/ListEditorItemView.jsx';
 
 import EntitlementPoolsEditor from './EntitlementPoolsEditor.js';
-import InputOptions, {other as optionInputOther} from 'nfvo-components/input/inputOptions/InputOptions.jsx';
-import {optionsInputValues} from './EntitlementPoolsConstants';
-import EntitlementPoolsConfirmationModal from './EntitlementPoolsConfirmationModal.jsx';
-
+import {extractUnits, extractValue} from './EntitlementPoolsConstants';
 
 class EntitlementPoolsListEditorView extends React.Component {
        static propTypes = {
@@ -33,35 +45,33 @@ class EntitlementPoolsListEditorView extends React.Component {
        };
 
        render() {
-               let {licenseModelId, vendorName, isReadOnlyMode, isDisplayModal, isModalInEditMode} = this.props;
+               let {licenseModelId, vendorName, isReadOnlyMode, isDisplayModal, isModalInEditMode, version} = this.props;
                let {onAddEntitlementPoolClick} = this.props;
                const {localFilter} = this.state;
 
                return (
                        <div className='entitlement-pools-list-editor'>
                                <ListEditorView
-                                       title={i18n('Entitlement Pools for {vendorName} License Model', {vendorName})}
+                                       title={i18n('Entitlement Pools', {vendorName})}
                                        plusButtonTitle={i18n('Add Entitlement Pool')}
                                        onAdd={onAddEntitlementPoolClick}
                                        filterValue={localFilter}
-                                       onFilter={filter => this.setState({localFilter: filter})}
+                                       onFilter={value => this.setState({localFilter: value})}
                                        isReadOnlyMode={isReadOnlyMode}>
                                        {this.filterList().map(entitlementPool => this.renderEntitlementPoolListItem(entitlementPool, isReadOnlyMode))}
                                </ListEditorView>
-                               <Modal show={isDisplayModal} bsSize='large' animation={true} className='entitlement-pools-modal'>
+                               <Modal show={isDisplayModal} bsSize='large' animation={true} className='onborading-modal entitlement-pools-modal'>
                                        <Modal.Header>
                                                <Modal.Title>{`${isModalInEditMode ? i18n('Edit Entitlement Pool') : i18n('Create New Entitlement Pool')}`}</Modal.Title>
                                        </Modal.Header>
                                        <Modal.Body>
                                                {
                                                        isDisplayModal && (
-                                                               <EntitlementPoolsEditor  licenseModelId={licenseModelId} isReadOnlyMode={isReadOnlyMode}/>
+                                                               <EntitlementPoolsEditor version={version} licenseModelId={licenseModelId} isReadOnlyMode={isReadOnlyMode}/>
                                                        )
                                                }
                                        </Modal.Body>
                                </Modal>
-
-                               <EntitlementPoolsConfirmationModal licenseModelId={licenseModelId}/>
                        </div>
                );
        }
@@ -92,14 +102,15 @@ class EntitlementPoolsListEditorView extends React.Component {
                                className='list-editor-item-view'
                                isReadOnlyMode={isReadOnlyMode}>
                                <div className='list-editor-item-view-field'>
+
                                        <div className='title'>{i18n('Name')}</div>
-                                       <div className='text name'>{name}</div>
+                                       <div ><div className='textEllipses text name'>{name}</div></div>
                                </div>
 
                                <div className='list-editor-item-view-field'>
                                        <div className='title'>{i18n('Entitlement')}</div>
-                                       <div className='entitlement-parameters'>{`${this.extractValue(aggregationFunction)} ${this.extractValue(entitlementMetric)} per  ${this.extractValue(time)}`}</div>
-                                       <div className='entitlement-pools-count'>{`${thresholdValue ? thresholdValue : ''} ${this.extractUnits(thresholdUnits)}`}</div>
+                                       <div className='entitlement-parameters'>{`${extractValue(aggregationFunction)} ${extractValue(entitlementMetric)} per  ${extractValue(time)}`}</div>
+                                       <div className='entitlement-pools-count'>{`${thresholdValue ? thresholdValue : ''} ${extractUnits(thresholdUnits)}`}</div>
                                </div>
 
                                <div className='list-editor-item-view-field'>
@@ -115,18 +126,22 @@ class EntitlementPoolsListEditorView extends React.Component {
                );
        }
 
-
-
-       extractUnits(units) {
-               if (units === undefined) {return '';} //TODO fix it later
-               return units === 'Absolute' ? '' : '%';
-       }
-
-       extractValue(item) {
-               if (item === undefined) {return '';} //TODO fix it later
-
-               return  item ? item.choice === optionInputOther.OTHER ? item.other : InputOptions.getTitleByName(optionsInputValues, item.choice) : '';
-       }
 }
 
 export default EntitlementPoolsListEditorView;
+
+export function generateConfirmationMsg(entitlementPoolToDelete) {
+       let poolName = entitlementPoolToDelete ? entitlementPoolToDelete.name : '';
+       let msg = i18n('Are you sure you want to delete "{poolName}"?', {poolName});
+       let subMsg = entitlementPoolToDelete
+       && entitlementPoolToDelete.referencingFeatureGroups
+       && entitlementPoolToDelete.referencingFeatureGroups.length > 0 ?
+               i18n('This entitlement pool is associated with one or more feature groups') :
+               '';
+       return (
+               <div>
+                       <p>{msg}</p>
+                       <p>{subMsg}</p>
+               </div>
+       );
+}