1 import React from 'react';
2 import i18n from 'nfvo-utils/i18n/i18n.js';
3 import ValidationForm from 'nfvo-components/input/validation/ValidationForm.jsx';
4 import ValidationInput from'nfvo-components/input/validation/ValidationInput.jsx';
7 class SoftwareProductComponentStorageView extends React.Component {
10 componentId: React.PropTypes.string,
11 onQDataChanged: React.PropTypes.func,
12 onSubmit: React.PropTypes.func,
13 isReadOnlyMode: React.PropTypes.bool
17 let {qdata, qschema, onQDataChanged, onSubmit, isReadOnlyMode} = this.props;
20 <div className='vsp-component-questionnaire-view'>
22 ref='storageValidationForm'
24 onSubmit={() => onSubmit({qdata})}
25 className='component-questionnaire-validation-form'
26 isReadOnlyMode={isReadOnlyMode}
27 onDataChanged={onQDataChanged}
31 <div className='section-title'>{i18n('Backup')}</div>
32 <div className='rows-section'>
33 <div className='row-flex-components input-row'>
34 <div className='single-col'>
35 <div className='vertical-flex'>
36 <label key='label' className='control-label'>{i18n('Backup Type')}</label>
37 <div className='radio-options-content-row'>
39 label={i18n('On Site')}
41 pointer={'/storage/backup/backupType'}
42 className='radio-field'/>
46 <div className='single-col'>
49 label={i18n('Backup Solution')}
50 pointer={'/storage/backup/backupSolution'}
51 className='section-field'/>
53 <div className='single-col'>
56 label={i18n('Backup Storage Size (GB)')}
57 pointer={'/storage/backup/backupStorageSize'}
58 className='section-field'/>
62 label={i18n('Backup NIC')}
63 pointer={'/storage/backup/backupNIC'}
64 className='section-field'/>
68 <div className='section-title'>{i18n('Snapshot Backup')}</div>
69 <div className='rows-section'>
70 <div className='row-flex-components input-row'>
71 <div className='single-col'>
74 label={i18n('Snapshot Frequency (hours)')}
75 pointer={'/storage/snapshotBackup/snapshotFrequency'}
76 className='section-field'/>
78 <div className='empty-two-col' />
79 <div className='empty-col' />
83 <div className='section-title'>{i18n('Log Backup')}</div>
84 <div className='rows-section'>
85 <div className='row-flex-components input-row'>
86 <div className='single-col'>
89 label={i18n('Size of Log Files (GB)')}
90 pointer={'/storage/logBackup/sizeOfLogFiles'}
91 className='section-field'/>
93 <div className='single-col'>
96 label={i18n('Log Retention Period (days)')}
97 pointer={'/storage/logBackup/logRetentionPeriod'}
98 className='section-field'/>
100 <div className='single-col'>
103 label={i18n('Log Backup Frequency (days)')}
104 pointer={'/storage/logBackup/logBackupFrequency'}
105 className='section-field'/>
109 label={i18n('Log File Location')}
110 pointer={'/storage/logBackup/logFileLocation'}
111 className='section-field'/>
120 return this.refs.storageValidationForm.handleFormSubmit(new Event('dummy'));
124 export default SoftwareProductComponentStorageView;