Skip to content
Snippets Groups Projects
Commit 829d55d7 authored by Viktor Vorobev's avatar Viktor Vorobev
Browse files

Merged in hide-scan-storage (pull request #55)

[NRRPLT-0000] Hide Scan Storage

* [NRRPLT-0000] Hide Scan Storage


Approved-by: Ugo Albanese
parent 9b6443a8
No related branches found
No related tags found
No related merge requests found
public/hbp.png

1.6 KiB

public/hbp75.png

8.81 KiB

...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" /> <link rel="icon" href="%PUBLIC_URL%/hbp.png" />
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
<meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" /> <meta name="theme-color" content="#000000" />
......
...@@ -3,9 +3,14 @@ ...@@ -3,9 +3,14 @@
"name": "Neurorobotics Platform", "name": "Neurorobotics Platform",
"icons": [ "icons": [
{ {
"src": "favicon.ico", "src": "hbp.png",
"sizes": "64x64 32x32 24x24 16x16", "sizes": "32x32",
"type": "image/x-icon" "type": "image/png"
},
{
"src": "hbp75.png",
"sizes": "75x75",
"type": "image/png"
}, },
{ {
"src": "logo192.png", "src": "logo192.png",
......
...@@ -7,12 +7,18 @@ import ExperimentStorageService from '../../services/experiments/files/experimen ...@@ -7,12 +7,18 @@ import ExperimentStorageService from '../../services/experiments/files/experimen
import './experiment-list-element.css'; import './experiment-list-element.css';
import './import-experiment-buttons.css'; import './import-experiment-buttons.css';
import frontendConfig from '../../config.json';
import OverlayTrigger from 'react-bootstrap/OverlayTrigger'; import OverlayTrigger from 'react-bootstrap/OverlayTrigger';
import Tooltip from 'react-bootstrap/Tooltip'; import Tooltip from 'react-bootstrap/Tooltip';
export default class ImportExperimentButtons extends React.Component { export default class ImportExperimentButtons extends React.Component {
constructor(props) { constructor(props) {
super(props); super(props);
this.state = {}; this.state = {};
// By default, we enable the scan storage button, even if it's not in the config.
// For the online version, we explicitly disable it.
this.scanStorage = frontendConfig.scanStorage !== undefined ? frontendConfig.scanStorage : true;
} }
importFolderPopupClick() { importFolderPopupClick() {
...@@ -152,47 +158,50 @@ export default class ImportExperimentButtons extends React.Component { ...@@ -152,47 +158,50 @@ export default class ImportExperimentButtons extends React.Component {
{/* Import buttons */} {/* Import buttons */}
{/* TODO: [NRRPLT-8721] restore experiment import funtionality */} {/* TODO: [NRRPLT-8721] restore experiment import funtionality */}
<div className='list-entry-buttons flex-container center'> <div className='list-entry-buttons flex-container center'>
<input disabled={true} id='folder' type='file' style={{display:'none'}} <input disabled={true} id='folder' type='file' style={{ display: 'none' }}
multiple directory='' webkitdirectory='' multiple directory='' webkitdirectory=''
onChange={(event) => this.importExperimentFolderChange(event)}/> onChange={(event) => this.importExperimentFolderChange(event)} />
<input disabled={true} id='zip' type='file' style={{display:'none'}} <input disabled={true} id='zip' type='file' style={{ display: 'none' }}
multiple accept='.zip' multiple accept='.zip'
onChange={(event) => this.importZippedExperimentChange(event)}/> onChange={(event) => this.importZippedExperimentChange(event)} />
{!this.state.isImporting <div className='btn-group' role='group'>
? <div className='btn-group' role='group'> <OverlayTrigger placement='bottom'
<OverlayTrigger placement='bottom' key='folder-tooltip'
key='folder-tooltip' overlay={
overlay={ <Tooltip id='tooltip-folder'>
<Tooltip id='tooltip-folder'> The import of the experiments is coming soon!
The import of the experiments is comming soon! </Tooltip>
</Tooltip> }
} >
> <button type='button' className='btn btn-outline-dark'>
<button type='button' className='btn btn-outline-dark'> <label htmlFor='folder' className='import-button'>
<label htmlFor='folder' className='import-button'> <FaFolder /> Import folder
<FaFolder/> Import folder </label>
</label>
</button>
</OverlayTrigger>
<OverlayTrigger placement='bottom'
key='zip-tooltip'
overlay={
<Tooltip id='tooltip-zip'>
The import of the zipped experiments is comming soon!
</Tooltip>
}
>
<button type='button' className='btn btn-outline-dark'
data-toggle='tooltip' data-placement='bottom' title='Tooltip on bottom'
>
<label htmlFor='zip' className='import-button'><FaFileArchive /> Import zip</label>
</button >
</OverlayTrigger>
<button type='button' className='btn btn-outline-dark' onClick={() => this.scanStorageClick()}>
<FaAudible/> Scan Storage
</button> </button>
</div> </OverlayTrigger>
: null} <OverlayTrigger placement='bottom'
key='zip-tooltip'
overlay={
<Tooltip id='tooltip-zip'>
The import of the zipped experiments is coming soon!
</Tooltip>
}
>
<button type='button' className='btn btn-outline-dark'
data-toggle='tooltip' data-placement='bottom' title='Tooltip on bottom'
>
<label htmlFor='zip' className='import-button'><FaFileArchive /> Import zip</label>
</button >
</OverlayTrigger>
{
this.scanStorage ?
<button type='button' className='btn btn-outline-dark' onClick={() => this.scanStorageClick()}>
<FaAudible /> Scan Storage
</button> :
null
}
</div>
</div> </div>
</div> </div>
); );
......
...@@ -5,6 +5,8 @@ import NrpUserService from '../../services/proxy/nrp-user-service.js'; ...@@ -5,6 +5,8 @@ import NrpUserService from '../../services/proxy/nrp-user-service.js';
import EventProxyService from '../../services/proxy/event-proxy-service'; import EventProxyService from '../../services/proxy/event-proxy-service';
import ExperimentStorageService from '../../services/experiments/files/experiment-storage-service'; import ExperimentStorageService from '../../services/experiments/files/experiment-storage-service';
import frontendConfig from '../../config.json';
import Grid from '@material-ui/core/Grid'; import Grid from '@material-ui/core/Grid';
import { Alert, AlertTitle } from '@material-ui/lab'; import { Alert, AlertTitle } from '@material-ui/lab';
import Button from '@material-ui/core/Button'; import Button from '@material-ui/core/Button';
...@@ -29,6 +31,9 @@ export default class NrpCoreDashboard extends React.Component { ...@@ -29,6 +31,9 @@ export default class NrpCoreDashboard extends React.Component {
proxyConnected: EventProxyService.instance.isConnected(), proxyConnected: EventProxyService.instance.isConnected(),
reconnectDisabled: EventProxyService.instance.isConnected() reconnectDisabled: EventProxyService.instance.isConnected()
}; };
// By default, we enable the scan storage button, even if it's not in the config.
// For the online version, we explicitly disable it.
this.scanStorage = frontendConfig.scanStorage !== undefined ? frontendConfig.scanStorage : true;
this.mqttBrokerUrl = MqttClientService.instance.getBrokerURL(); this.mqttBrokerUrl = MqttClientService.instance.getBrokerURL();
} }
...@@ -130,11 +135,15 @@ export default class NrpCoreDashboard extends React.Component { ...@@ -130,11 +135,15 @@ export default class NrpCoreDashboard extends React.Component {
{this.state.proxyConnected ? 'Connected' : 'Could not get response from the Proxy'} {this.state.proxyConnected ? 'Connected' : 'Could not get response from the Proxy'}
</Alert> </Alert>
</Grid> </Grid>
<Grid item xs={12}> {
<Button onClick={this.triggerProxyScanStorage} disabled={!this.state.proxyConnected}> this.scanStorage ?
Proxy Scan Storage <Grid item xs={12}>
</Button> <Button onClick={this.triggerProxyScanStorage} disabled={!this.state.proxyConnected}>
</Grid> Proxy Scan Storage
</Button>
</Grid> :
null
}
{/*<Grid item xs={12}> {/*<Grid item xs={12}>
<button onClick={NrpUserService.instance.getCurrentUser()}>Try to login</button> <button onClick={NrpUserService.instance.getCurrentUser()}>Try to login</button>
</Grid> */} </Grid> */}
......
...@@ -17,5 +17,6 @@ ...@@ -17,5 +17,6 @@
"errors": "runtime_error", "errors": "runtime_error",
"status": "status" "status": "status"
} }
} },
"scanStorage": true
} }
...@@ -17,5 +17,6 @@ ...@@ -17,5 +17,6 @@
"errors": "runtime_error", "errors": "runtime_error",
"status": "status" "status": "status"
} }
} },
"scanStorage": true
} }
...@@ -18,5 +18,6 @@ ...@@ -18,5 +18,6 @@
"errors": "runtime_error", "errors": "runtime_error",
"status": "status" "status": "status"
} }
} },
"scanStorage": false
} }
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment