diff --git a/backend/server.js b/backend/server.js index a7a0de8..a0b03a8 100644 --- a/backend/server.js +++ b/backend/server.js @@ -17,22 +17,27 @@ const imageRequest = require('./aws'); mongoose.connect('mongodb://localhost/ReelLecture', { useNewUrlParser: true, useUnifiedTopology: true }); -let student = 'student'; -let password = 'password'; -let s = new User({ username: 'sabhya@gmail.com', name: 'Sabhya', role: student }); -s.setPassword(password).then(() => s.save()); -let c = new User({ username: 'chris@gmail.com', name: 'Chris', role: 'instructor' }); -c.setPassword(password).then(() => c.save()); -let a = new User({ username: 'alex@gmail.com', name: 'Alex', role: 'instructor' }); -a.setPassword(password).then(() => a.save()); +// let student = 'student'; +// let password = 'password'; +// let s = new User({ username: 'sabhya@gmail.com', name: 'Sabhya', role: student }); +// s.setPassword(password).then(() => s.save()); -let am = new User({ username: 'amanda@gmail.com', name: 'Amanda', role: student }); -am.setPassword(password).then(() => am.save()); +// let c = new User({ username: 'chris@gmail.com', name: 'Chris', role: 'instructor' }); +// c.setPassword(password).then(() => c.save()); + +// let a = new User({ username: 'alex@gmail.com', name: 'Alex', role: 'instructor' }); +// a.setPassword(password).then(() => a.save()); + +// let am = new User({ username: 'amanda@gmail.com', name: 'Amanda', role: student }); +// am.setPassword(password).then(() => am.save()); + +User.find({ }).exec((err, docs) => console.log(docs)) app.use(express.static(__dirname + '/public')); app.use(bodyParser.urlencoded({ extended: true })); +app.use(bodyParser.json()); app.use(session({ secret: 'keyboard cat' })); app.use(passport.initialize()); app.use(passport.session()); @@ -93,10 +98,10 @@ calcValues = (data, name) => { apiRouter.post('/register', async (req, res) => { let newUser = new User({ name: req.body.name, - email: req.body.email, - password: req.body.password, + username: req.body.email, role: req.body.role }); + await newUser.setPassword(req.body.password); let doc = await newUser.save(); res.send(doc); }); diff --git a/frontend/src/component/analysis.js b/frontend/src/component/analysis.js new file mode 100644 index 0000000..7635eba --- /dev/null +++ b/frontend/src/component/analysis.js @@ -0,0 +1,25 @@ +import React from 'react'; +import { ListGroup, Badge } from 'react-bootstrap'; +import { PieChart } from 'react-minimal-pie-chart'; +import Nav from '../pages/nav'; +import LoadingPage from '../pages/LoadingPage'; + +class Analysis extends React.Component { + render() { + let { data } = this.props; + if (data === null) return + + let emotions = Object.keys(data); + + return ( + + {emotions.map(el => { + if (Object.keys(data[el]).length !== 0) + return {el} {Object.values(data[el]).reduce((a,b) => a+b)} + })} + + ); + } +} + +export default Analysis; \ No newline at end of file diff --git a/frontend/src/pages/Analysis.js b/frontend/src/pages/Analysis.js index 6456ae4..bad8fbb 100644 --- a/frontend/src/pages/Analysis.js +++ b/frontend/src/pages/Analysis.js @@ -1,49 +1,29 @@ -import React from 'react'; -import { PieChart } from 'react-minimal-pie-chart'; -import LoadingPage from './LoadingPage'; - -class Analysis extends React.Component { - state = { - analytics: null, - redirect: false - } +import React from 'react'; +import { + Container +} from 'react-bootstrap'; +import AnalysisComponent from '../component/analysis'; +import Nav from './nav'; +class AnalysisPage extends React.Component { componentDidMount() { fetch("/api/analytics") .then(res => res.json()) .then(data => { this.setState({ analytics: data }) }) - .catch(err => this.setState({ redirect: true })); } render() { - let { analytics } = this.state; - if (analytics === null) return return ( -
-
-

{JSON.stringify(analytics)}

-

{analytics.eyesClosed}

-

{JSON.stringify(analytics).happy} :

-
- {/* analytics.forEach(element => { - - }) */} -
- {/*

By Emotion */} - -

-
-

Over Time

-
-
- ) + +