Merge pull request #16 from ClaytonWWilson/userline

Userline
This commit is contained in:
asankaran35 2019-09-30 18:23:36 -04:00 committed by GitHub
commit 7969d3b10b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 51 additions and 9 deletions

View File

@ -1,19 +1,20 @@
const admin = require('firebase-admin');
/* eslint-disable promise/always-return */ /* eslint-disable promise/always-return */
exports.putPost = (req, res) => { exports.putPost = (req, res) => {
if (req.body.body.trim() === '') {
return res.status(400).json({ body: 'Body must not be empty!'});
}
const newPost = { const newPost = {
body: req.body.body, body: req.body.body,
userHandle: req.user.handle, userHandle: req.body.userHandle,
userImage: req.user.imageUrl, userImage: req.body.userImage,
microBlogTitle: req.body.microBlogTitle,
createdAt: new Date().toISOString(), createdAt: new Date().toISOString(),
likeCount: 0, likeCount: 0,
commentCount: 0 commentCount: 0,
}; };
db.collection('post').add(newPost) admin.firestore().collection('posts').add(newPost)
.then((doc) => { .then((doc) => {
const resPost = newPost; const resPost = newPost;
resPost.postId = doc.id; resPost.postId = doc.id;

View File

@ -26,6 +26,7 @@ app.post('/updateProfileInfo', updateProfileInfo);
*------------------------------------------------------------------*/ *------------------------------------------------------------------*/
const {putPost} = require('./handlers/post'); const {putPost} = require('./handlers/post');
// Adds one post to the database // Adds one post to the database
app.post('/putPost', fbAuth, putPost); app.post('/putPost', fbAuth, putPost);

View File

@ -12,6 +12,7 @@ import register from './Register.js';
import login from './Login.js'; import login from './Login.js';
import user from './pages/user'; import user from './pages/user';
import writeMicroblog from './Writing_Microblogs.js'; import writeMicroblog from './Writing_Microblogs.js';
import userLine from './Userline.js';
class App extends Component { class App extends Component {
render() { render() {
@ -25,6 +26,7 @@ class App extends Component {
<Route exact path="/login" component={login}/> <Route exact path="/login" component={login}/>
<Route exact path="/user" component={user}/> <Route exact path="/user" component={user}/>
<Route exact path="/home" component={writeMicroblog}/> <Route exact path="/home" component={writeMicroblog}/>
<Route exact path="/userline" component={userLine}/>
</div> </div>
</Router> </Router>

View File

@ -0,0 +1,24 @@
import React, { Component } from "react";
import { BrowserRouter as Router } from 'react-router-dom';
import Route from 'react-router-dom/Route';
import axios from 'axios';
class Userline extends Component {
constructor(props)
{
super(props);
this.state = {
}
}
render() {
return (
<p>Hi</p>
)
}
}
export default Userline;

View File

@ -1,6 +1,7 @@
import React, { Component } from "react"; import React, { Component } from "react";
import { BrowserRouter as Router } from 'react-router-dom'; import { BrowserRouter as Router } from 'react-router-dom';
import Route from 'react-router-dom/Route'; import Route from 'react-router-dom/Route';
import axios from 'axios';
class Writing_Microblogs extends Component { class Writing_Microblogs extends Component {
@ -25,7 +26,20 @@ class Writing_Microblogs extends Component {
} }
handleSubmit(event) { handleSubmit(event) {
alert('A title for the microblog was inputted: ' + this.state.title + '\nA microblog was posted: ' + this.state.value); // alert('A title for the microblog was inputted: ' + this.state.title + '\nA microblog was posted: ' + this.state.value);
const response = axios.post(
'http://localhost:5001/twistter-e4649/us-central1/api/putPost',
{ body: this.state.value,
userHandle: "new user",
userImage: "bing-url",
microBlogTitle: this.state.title
},
{ headers: { 'Content-Type': 'application/json'} }
)
console.log(response.data);
event.preventDefault(); event.preventDefault();
} }