Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Nov 8, 2024. It is now read-only.

Commit 57184ad

Browse files
Merge branch 'test-docker' into footer
2 parents 4344c9b + bf6895a commit 57184ad

File tree

4 files changed

+29
-44
lines changed

4 files changed

+29
-44
lines changed

‎Dockerfile‎

Lines changed: 0 additions & 17 deletions
This file was deleted.

‎src/app/App.js‎

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,40 +6,42 @@ import './App.css';
66

77
class App extends Component {
88
constructor(props) {
9-
super(props);
10-
11-
console.log(this.props.frameworkImages);
12-
9+
super(props);
1310
this.state = {frameworks: this.props.frameworkImages,
14-
disableButton: false};
15-
11+
disableAllButton: false};
12+
this.loadingGif="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/0.16.1/images/loader-large.gif";
1613
this.click = this.click.bind(this);
1714
}
18-
1915

2016
click(f) {
21-
this.setState({framework:this.state.framework, disableButton:true})
22-
fetch('http://vault.acm.illinois.edu:5656/create_container', {
23-
method: 'POST',
24-
headers: {
25-
'Accept': 'application/json',
26-
'Content-Type': 'application/json',
27-
},
28-
body: JSON.stringify(f)
29-
}).then((resp) => resp.json()).then(function(res){
30-
window.location.replace(res['jupyter_url']);
31-
});
32-
console.log(f)
17+
var updatedFramework = this.state.frameworks
18+
var type = typeof updatedFramework;
19+
console.log(type);
20+
var index = updatedFramework.indexOf(f);
21+
updatedFramework[index].loading = true;
22+
this.setState({framework:updatedFramework, disableAllButton:true})
23+
24+
fetch('http://vault.acm.illinois.edu:5656/create_container', {
25+
method: 'POST',
26+
headers: {
27+
'Accept': 'application/json',
28+
'Content-Type': 'application/json',
29+
},
30+
body: JSON.stringify(f)
31+
}).then((resp) => resp.json()).then(function(res){
32+
window.location.replace(res['jupyter_url']);
33+
});
34+
console.log(f)
3335
}
3436

3537
render() {
36-
console.log(this.state.disableButton);
37-
return (
38+
console.log(this.state.disableAllButton);
39+
return (
3840
<div className="GPU-CLUSTER-FRONTEND">
3941
<Nav/>
40-
<Frameworks disabled={this.state.disableButton} frameworks={this.state.frameworks} handler={this.click} />
41-
<Footer/>
42-
</div>
42+
<Frameworks disabled={this.state.disableButton} frameworks={this.state.frameworks} handler={this.click} loadingGif={this.loadingGif}/>
43+
<Footer/>
44+
</div>
4345
);
4446
}
4547
}

‎src/app/frameworks/Frameworks.js‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import Framework from './framework/Framework.js'
44

55
class Grid extends Component {
66
renderFramework(f, t, cl) {
7-
return <Framework disabled={this.props.disabled} framework={f} onClickHandler={this.props.handler}/>
7+
return <Framework disabled={this.props.disabled} framework={f} onClickHandler={this.props.handler}loadingGif={this.props.loadingGif}/>
88
}
99

1010
render() {

‎src/app/frameworks/framework/Framework.js‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ class Framework extends Component {
55
render() {
66
console.log(this.props.disabled);
77
return (
8-
<button className="Framework" onClick={() => this.props.onClickHandler(this.props.framework)} disabled={this.props.disabled}>
9-
<img className="logo" src={this.props.framework.img} alt=""/>
8+
<button className="Framework" onClick={() => this.props.onClickHandler(this.props.framework)} disabled={this.props.disabled||this.props.framework.disabled}>
9+
<img className="logo" src={this.props.framework.loading ? this.props.loadingGif : this.props.framework.img} alt=""/>
1010
<div className="label">
1111
<span className="name">{this.props.framework.name}</span>
1212
<span className="details">{this.props.framework.details}</span>

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /