Skip to content
This repository was archived by the owner on Oct 6, 2024. It is now read-only.

Commit 3c2acee

Browse files
author
Cvanzy
authored
Merge branch 'master' into a11
2 parents 8fca0d3 + 3a47465 commit 3c2acee

38 files changed

+2606
-469
lines changed

package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"@trendmicro/react-modal": "^3.0.0",
77
"bootstrap": "^4.3.1",
88
"formik": "^1.5.2",
9-
"jquery": "^3.3.1",
9+
"jquery": "^3.4.0",
1010
"node-sass": "^4.11.0",
1111
"popper.js": "^1.14.7",
1212
"query-string": "^6.4.2",

src/App.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,20 @@ export default class App extends Component {
2222
};
2323
}
2424

25+
componentDidMount() {
26+
this.userService.getCurrentUser().then(user => {
27+
if (user) this.setState({user});
28+
});
29+
}
30+
31+
setUser = user => this.setState({user});
32+
2533
render() {
2634
return (
2735
<Router>
2836
<div>
29-
<GlobalNavbar username={this.state.user.username} isAdmin={this.state.user.role === "admin"}/>
37+
<GlobalNavbar username={this.state.user.firstName}
38+
isAdmin={this.state.user.role === "admin"}/>
3039
<div className="container">
3140
<Route exact path="/" component={Home}/>
3241
<Route
@@ -50,12 +59,12 @@ export default class App extends Component {
5059
render={({location, history}) =>
5160
<Login history={history}
5261
location={location}
53-
setUser={user => this.setState({user})}/>}/>
62+
setUser={this.setUser}/>}/>
5463
<Route path="/logout"
5564
exact
5665
render={({history}) => {
5766
this.userService.logout().then(() => {
58-
this.setState({user: {username: null}});
67+
this.setState({user: {email: null}});
5968
history.push("/home");
6069
});
6170
return null;
@@ -65,7 +74,7 @@ export default class App extends Component {
6574
component={Admin}/>
6675
<Route
6776
path="/profile"
68-
component={Profile}/>
77+
render={({history}) => <Profile history={history} setUser={this.setUser}/>}/>
6978
</div>
7079
</div>
7180
</Router>

src/components/Admin.js

Lines changed: 57 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -4,77 +4,69 @@ import ServiceAnswers from './ServiceAnswers'
44
import ServiceAnswerDetails from './ServiceAnswerDetails'
55
import ServiceQuestions from './ServiceQuestionsContainer'
66
import ServiceQuestionDetails from './ServiceQuestionDetails';
7-
import FAQAnswers from './FAQAnswers';
87
import FAQAnswerDetails from './FAQAnswerDetails';
98
import FAQs from './FAQs';
109
import FAQDetails from './FAQDetails';
1110
import ServiceCategory from "./ServiceCategory"
11+
import FAQAnswersContainer from "./FAQAnswersContainer";
1212

1313

1414
const Admin = () =>
15-
<div>
16-
<h2>Admin</h2>
17-
<Router>
18-
<div className="row">
19-
<div className="col-3">
20-
<Link to="/admin/service-answers">Service Answers</Link>
21-
<br/>
22-
<Link to="/admin/service-answers/1">Service Answers Details</Link>
23-
<br/>
24-
<Link to="/admin/service-questions">Service Questions</Link>
25-
<br/>
26-
<Link to="/admin/service-questions/1">Service Questions Details</Link>
27-
<br/>
28-
<Link to="/admin/faq-answers">FAQ Answers</Link>
29-
<br/>
30-
<Link to="/admin/faq-answers/1">FAQ Answer Details</Link>
31-
<br/>
32-
<Link to="/admin/faqs">FAQs</Link>
33-
<br/>
34-
<Link to="/admin/faqs/1">FAQ Details</Link>
35-
<br />
36-
<Link to="/admin/service-category">Service Category</Link>
37-
</div>
38-
<div className="col-9">
39-
<Route
40-
path="/admin/service-answers"
41-
exact
42-
component={ServiceAnswers}/>
43-
<Route
44-
path="/admin/service-answers/:id"
45-
exact
46-
component={ServiceAnswerDetails}/>
47-
<Route
48-
path="/admin/service-questions"
49-
exact
50-
component={ServiceQuestions}/>
51-
<Route
52-
path="/admin/service-questions/:id"
53-
exact
54-
component={ServiceQuestionDetails}/>
55-
<Route
56-
path="/admin/faq-answers"
57-
exact
58-
component={FAQAnswers}/>
59-
<Route
60-
path="/admin/faq-answers/:id"
61-
exact
62-
component={FAQAnswerDetails}/>
63-
<Route
64-
path="/admin/faqs"
65-
exact
66-
component={FAQs}/>
67-
<Route
68-
path="/admin/faqs/:id"
69-
exact
70-
component={FAQDetails}/>
71-
<Route
72-
path="/admin/service-category"
73-
exact
74-
component={ServiceCategory}/>
75-
</div>
76-
</div>
77-
</Router>
78-
</div>
15+
<div>
16+
<h2>Admin</h2>
17+
<Router>
18+
<div className="row">
19+
<div className="col-3 d-flex flex-column">
20+
<Link to="/admin/service-answers">Service Answers</Link>
21+
<Link to="/admin/service-answers/1">Service Answers Details</Link>
22+
<Link to="/admin/service-questions">Service Questions</Link>
23+
<Link to="/admin/service-questions/1">Service Questions Details</Link>
24+
<Link to="/admin/faq-answers">FAQ Answers</Link>
25+
<Link to="/admin/faq-answers/1">FAQ Answer Details</Link>
26+
<Link to="/admin/faqs">FAQs</Link>
27+
<Link to="/admin/faqs/1">FAQ Details</Link>
28+
<Link to="/admin/service-category">Service Category</Link>
29+
</div>
30+
<div className="col-9">
31+
<Route
32+
path="/admin/service-answers"
33+
exact
34+
component={ServiceAnswers}/>
35+
<Route
36+
path="/admin/service-answers/:id"
37+
exact
38+
component={ServiceAnswerDetails}/>
39+
<Route
40+
path="/admin/service-questions"
41+
exact
42+
component={ServiceQuestions}/>
43+
<Route
44+
path="/admin/service-questions/:id"
45+
exact
46+
component={ServiceQuestionDetails}/>
47+
<Route
48+
path="/admin/faq-answers"
49+
exact
50+
component={FAQAnswersContainer}/>
51+
<Route
52+
path="/admin/faq-answers/:id"
53+
exact
54+
component={FAQAnswerDetails}/>
55+
<Route
56+
path="/admin/faqs"
57+
exact
58+
component={FAQs}/>
59+
<Route
60+
path="/admin/faqs/:id"
61+
exact
62+
component={FAQDetails}/>
63+
<Route
64+
path="/admin/service-category"
65+
exact
66+
component={ServiceCategory}/>
67+
</div>
68+
</div>
69+
</Router>
70+
</div>
7971

8072
export default Admin

src/components/FAQAnswers.js

Lines changed: 29 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,33 @@
1-
import React from 'react'
2-
import FAQAnswerService from '../services/FAQAnswerService'
31
import {Link} from "react-router-dom";
2+
import React from "react";
43

5-
export default class FAQAnswers extends React.Component {
6-
constructor(props) {
7-
super(props);
8-
this.faqAnswerService = FAQAnswerService.getInstance();
9-
this.state = {
10-
faqAnswers: []
4+
const FAQAnswers = ({faqAnswers}) => <div>
5+
<h3>FAQ Answers</h3>
6+
<table className="table">
7+
<thead>
8+
<tr>
9+
<td>ID</td>
10+
<td>Question ID</td>
11+
<td>Question</td>
12+
<td>Answer</td>
13+
</tr>
14+
</thead>
15+
<tbody>
16+
{
17+
faqAnswers
18+
.map(faqAnswer =>
19+
<tr key={faqAnswer.id}>
20+
<td>
21+
<Link to={`/admin/faq-answers/${faqAnswer.id}`}>{faqAnswer.id}</Link>
22+
</td>
23+
<td>{faqAnswer.questionId}</td>
24+
<td>{faqAnswer.question}</td>
25+
<td>{faqAnswer.answer}</td>
26+
</tr>
27+
)
1128
}
12-
}
13-
14-
componentDidMount() {
15-
this.faqAnswerService
16-
.findAllFAQAnswers()
17-
.then(faqAnswers =>
18-
this.setState({
19-
faqAnswers: faqAnswers
20-
})
21-
)
22-
}
29+
</tbody>
30+
</table>
31+
</div>;
2332

24-
render() {
25-
return (
26-
<div>
27-
<h3>FAQ Answers</h3>
28-
<table className="table">
29-
<thead>
30-
<tr>
31-
<td>ID</td>
32-
<td>Question ID</td>
33-
<td>Question</td>
34-
<td>Answer</td>
35-
</tr>
36-
</thead>
37-
<tbody>
38-
{
39-
this.state.faqAnswers
40-
.map(faqAnswer =>
41-
<tr key={faqAnswer.id}>
42-
<td>
43-
<Link to={`/admin/faq-answers/${faqAnswer.id}`}>{faqAnswer.id}</Link>
44-
</td>
45-
<td>{faqAnswer.questionId}</td>
46-
<td>{faqAnswer.question}</td>
47-
<td>{faqAnswer.answer}</td>
48-
</tr>
49-
)
50-
}
51-
</tbody>
52-
</table>
53-
</div>
54-
)
55-
}
56-
}
33+
export default FAQAnswers;
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import React from 'react'
2+
import FAQAnswerService from '../services/FAQAnswerService'
3+
import {Link} from "react-router-dom";
4+
import FAQAnswers from "./FAQAnswers";
5+
6+
export default class FAQAnswersContainer extends React.Component {
7+
constructor(props) {
8+
super(props);
9+
this.faqAnswerService = FAQAnswerService.getInstance();
10+
this.state = {
11+
faqAnswers: []
12+
}
13+
}
14+
15+
componentDidMount() {
16+
this.faqAnswerService
17+
.findAllFAQAnswers()
18+
.then(faqAnswers =>
19+
this.setState({
20+
faqAnswers: faqAnswers
21+
})
22+
)
23+
}
24+
25+
render() {
26+
return <FAQAnswers faqAnswers={this.state.faqAnswers}/>
27+
}
28+
}

src/components/FAQs.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -118,25 +118,25 @@ export default class FAQs extends React.Component {
118118
<nav aria-label="Page navigation example">
119119
<ul className="pagination">
120120
<li className={prevClass}>
121-
<a className="page-link" href="" onClick={this.previous}>Previous</a>
121+
<button className="page-link" onClick={this.previous}>Previous</button>
122122
</li>
123123
<li className={prevClass}>
124-
<a className="page-link" href="" onClick={this.previous}>
124+
<button className="page-link" onClick={this.previous}>
125125
{this.state.metadata && this.state.metadata.pageable.pageNumber}
126-
</a>
126+
</button>
127127
</li>
128128
<li className="page-item active">
129-
<a className="page-link" href="">
129+
<button className="page-link" >
130130
{this.state.metadata && this.state.metadata.pageable.pageNumber + 1}
131-
</a>
131+
</button>
132132
</li>
133133
<li className={nextClass}>
134-
<a className="page-link" href="" onClick={this.next}>
134+
<button className="page-link" onClick={this.next}>
135135
{this.state.metadata && this.state.metadata.pageable.pageNumber + 2}
136-
</a>
136+
</button>
137137
</li>
138138
<li className={nextClass}>
139-
<a className="page-link" href="" onClick={this.next}>Next</a>
139+
<button className="page-link" onClick={this.next}>Next</button>
140140
</li>
141141
</ul>
142142
</nav>

src/components/GlobalNavbar.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ import React from "react";
22
import {Link} from "react-router-dom";
33
import DropdownButton from 'react-bootstrap/DropdownButton'
44
import Dropdown from 'react-bootstrap/Dropdown'
5-
const GlobalNavbar = ({username, isAdmin}) => <nav className="navbar navbar-expand-md navbar-light bg-light mb-3">
5+
6+
const GlobalNavbar = ({username: name, isAdmin}) => <nav className="navbar navbar-expand-md navbar-light bg-light mb-3">
67
<div className="container">
78
<Link className="navbar-brand" to="/home">Oracle</Link>
89
<div className="navbar-nav flex-grow-1"/>

src/components/Home.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
import React from 'react'
2-
// import SearchBar from './SearchBar/SearchBar'
3-
import ServiceTabNavigator from './ServiceTabNavigator/ServiceTabNavigator'
2+
import ServiceTabNavContainer from './ServiceTabNavigator/ServiceTabNavContainer'
43
import ServiceCategoryPills from './ServiceCategoryPills/ServiceCategoryPills'
5-
import serviceCategories from '../data/service-categories.mock.json'
64
import SearchBarContainer from './SearchBar/SearchBarContainer'
75

86
class Home extends React.Component {
@@ -30,7 +28,7 @@ class Home extends React.Component {
3028
<br />
3129
<br />
3230
<br />
33-
{/* <ServiceTabNavigator /> */}
31+
<ServiceTabNavContainer history={this.props.history} />
3432
</div>
3533
)
3634
}

0 commit comments

Comments
 (0)