mirror of
https://github.com/ClaytonWWilson/CS307-Team24.git
synced 2026-03-10 21:25:04 +00:00
Compare commits
20 Commits
admin-dele
...
3739537b2f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3739537b2f | ||
|
|
ee2a081b41 | ||
|
|
b9cbd610a9 | ||
| daabbf80f6 | |||
| f9acefaafb | |||
| 948eff32c2 | |||
| 6de219505a | |||
| 7132a2ab45 | |||
| 5474543af4 | |||
| 6f77d03e2d | |||
| da6e7436ea | |||
| e7afac9a19 | |||
|
|
9449d3544b | ||
| 4f2e07756d | |||
|
|
f2cf7542a8 | ||
| ff7677bfb3 | |||
| 978af53a74 | |||
| a0a522f1d2 | |||
|
|
988c807af2 | ||
|
|
01b449d01d |
@@ -1,2 +1,2 @@
|
|||||||
# CS307-Team24
|
# CS307-Team24
|
||||||
CS307 Team 24 Twistter website.
|
CS307 Team 24 Twistter website
|
||||||
|
|||||||
@@ -178,10 +178,10 @@ exports.getOtherUsersPosts = (req, res) => {
|
|||||||
.collection("posts")
|
.collection("posts")
|
||||||
.where("userHandle", "==", req.body.handle);
|
.where("userHandle", "==", req.body.handle);
|
||||||
|
|
||||||
post_query += admin
|
// post_query += admin
|
||||||
.firestore()
|
// .firestore()
|
||||||
.collection("posts")
|
// .collection("posts")
|
||||||
.where("microBlogTitle", "==", "Alert").where("userHandle", "==", "Admin");
|
// .where("microBlogTitle", "==", "Alert").where("userHandle", "==", "Admin");
|
||||||
|
|
||||||
post_query
|
post_query
|
||||||
.get()
|
.get()
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
/* eslint-disable promise/catch-or-return */
|
/* eslint-disable promise/catch-or-return */
|
||||||
/* eslint-disable promise/always-return */
|
/* eslint-disable promise/always-return */
|
||||||
|
/* eslint-disable prefer-promise-reject-error */
|
||||||
|
|
||||||
const { admin, db } = require("../util/admin");
|
const { admin, db } = require("../util/admin");
|
||||||
const config = require("../util/config");
|
const config = require("../util/config");
|
||||||
@@ -866,10 +867,10 @@ oneWayCheck = (userA, userB) => {
|
|||||||
if (dmRecipient === userB) {
|
if (dmRecipient === userB) {
|
||||||
console.log(`You already have a DM with ${userB}`);
|
console.log(`You already have a DM with ${userB}`);
|
||||||
// reject(new Error(`You already have a DM with ${userB}`));
|
// reject(new Error(`You already have a DM with ${userB}`));
|
||||||
reject({
|
let e = new Error(`You already have a DM with that user`);
|
||||||
code: 400,
|
e.code = 400,
|
||||||
message: `You already have a DM with that user`
|
e.message = `You already have a DM with that user`
|
||||||
});
|
reject(e);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -1212,7 +1213,10 @@ exports.addSubscription = (req, res) => {
|
|||||||
return res.status(500).json({ err });
|
return res.status(500).json({ err });
|
||||||
});
|
});
|
||||||
// return res.status(200).json({ message: "ok" });
|
// return res.status(200).json({ message: "ok" });
|
||||||
});
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
return res.status(400).json({message: "That user doesn't exist", error});
|
||||||
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.getSubs = (req, res) => {
|
exports.getSubs = (req, res) => {
|
||||||
|
|||||||
1184
twistter-frontend/package-lock.json
generated
1184
twistter-frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -7,7 +7,7 @@
|
|||||||
"@material-ui/icons": "^4.5.1",
|
"@material-ui/icons": "^4.5.1",
|
||||||
"@material-ui/styles": "^4.5.0",
|
"@material-ui/styles": "^4.5.0",
|
||||||
"@material-ui/system": "^4.5.0",
|
"@material-ui/system": "^4.5.0",
|
||||||
"axios": "^0.19.0",
|
"axios": "^0.21.1",
|
||||||
"clsx": "^1.0.4",
|
"clsx": "^1.0.4",
|
||||||
"create-react-app": "^3.1.2",
|
"create-react-app": "^3.1.2",
|
||||||
"dayjs": "^1.8.17",
|
"dayjs": "^1.8.17",
|
||||||
|
|||||||
@@ -84,23 +84,23 @@ class Writing_Microblogs extends Component {
|
|||||||
console.error(err);
|
console.error(err);
|
||||||
});
|
});
|
||||||
console.log(postData.microBlogTopics);
|
console.log(postData.microBlogTopics);
|
||||||
let topicPromises = [];
|
// let topicPromises = [];
|
||||||
postData.microBlogTopics.forEach(topic => {
|
// postData.microBlogTopics.forEach(topic => {
|
||||||
topicPromises.push(axios
|
// topicPromises.push(axios
|
||||||
.post("/putTopic", {
|
// .post("/putTopic", {
|
||||||
following: topic
|
// following: topic
|
||||||
})
|
// })
|
||||||
.then(res => {
|
// .then(res => {
|
||||||
console.log(res.data);
|
// console.log(res.data);
|
||||||
})
|
// })
|
||||||
.catch(err => {
|
// .catch(err => {
|
||||||
console.error(err);
|
// console.error(err);
|
||||||
})
|
// })
|
||||||
)
|
// )
|
||||||
});
|
// });
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
topicPromises.push(postPromise);
|
// topicPromises.push(postPromise);
|
||||||
Promise.all(topicPromises)
|
Promise.all([postPromise])
|
||||||
.then(() => {
|
.then(() => {
|
||||||
this.setState({
|
this.setState({
|
||||||
value: "",
|
value: "",
|
||||||
|
|||||||
@@ -57,14 +57,28 @@ class Home extends Component {
|
|||||||
})
|
})
|
||||||
.catch(err => console.log(err));
|
.catch(err => console.log(err));
|
||||||
|
|
||||||
|
let allPosts;
|
||||||
let postPromise = axios
|
let postPromise = axios
|
||||||
.get("/getallPosts")
|
.get("/getallPosts")
|
||||||
.then(res => {
|
.then(res => {
|
||||||
// console.log(res.data);
|
// console.log(res.data);
|
||||||
|
// this.setState({
|
||||||
|
// posts: res.data
|
||||||
|
// });
|
||||||
|
allPosts = res.data;
|
||||||
|
// console.log(allPosts)
|
||||||
|
return axios.get("/getAlert")
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
// console.log(res.data)
|
||||||
|
// res.data.forEach((adminAlert) => {
|
||||||
|
// allPosts.push(adminAlert);
|
||||||
|
// })
|
||||||
this.setState({
|
this.setState({
|
||||||
posts: res.data
|
posts: allPosts
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
|
||||||
.catch(err => console.log(err));
|
.catch(err => console.log(err));
|
||||||
|
|
||||||
Promise.all([userPromise, postPromise])
|
Promise.all([userPromise, postPromise])
|
||||||
@@ -140,9 +154,8 @@ class Home extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
console.log(hiddenBool);
|
console.log(hiddenBool);
|
||||||
let postMarkup = this.state.posts ? (
|
let postMarkup = this.state.posts ? ( this.state.following === undefined || this.state.following === null ? <Typography>You aren't following anybody right now</Typography> :
|
||||||
// <<<<<<< admin-delete
|
this.state.posts.map(post => !post.hidden && this.state.following && (this.state.following.includes(post.userHandle) || post.userHandle === "Admin") ? (
|
||||||
this.state.posts.map(post => !post.hidden && this.state.following && this.state.following.includes(post.userHandle) ? (
|
|
||||||
<Card className={classes.card} key={post.postId}>
|
<Card className={classes.card} key={post.postId}>
|
||||||
<CardContent>
|
<CardContent>
|
||||||
<Typography>
|
<Typography>
|
||||||
@@ -191,7 +204,7 @@ class Home extends Component {
|
|||||||
|
|
||||||
{/* <button>Quote</button> */}
|
{/* <button>Quote</button> */}
|
||||||
|
|
||||||
<Typography variant="body2" color={"textSecondary"}>Likes {post.likeCount} Comments {post.commentCount}</Typography>
|
{/* <Typography variant="body2" color={"textSecondary"}>Likes {post.likeCount} Comments {post.commentCount}</Typography> */}
|
||||||
|
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
@@ -199,18 +212,6 @@ class Home extends Component {
|
|||||||
<p></p>
|
<p></p>
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
// =======
|
|
||||||
// this.state.posts.map(post =>
|
|
||||||
// this.state.following ? (
|
|
||||||
// this.state.following.includes(post.userHandle) ? (
|
|
||||||
// ) : (
|
|
||||||
// <p></p>
|
|
||||||
// )
|
|
||||||
// ) : (
|
|
||||||
// <p></p>
|
|
||||||
// )
|
|
||||||
// >>>>>>> master
|
|
||||||
|
|
||||||
) : (
|
) : (
|
||||||
<p>Loading post...</p>
|
<p>Loading post...</p>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -83,6 +83,10 @@ const styles = {
|
|||||||
wordBreak: "break-all",
|
wordBreak: "break-all",
|
||||||
color: 'black'
|
color: 'black'
|
||||||
},
|
},
|
||||||
|
dmRecentMessageDisabled: {
|
||||||
|
wordBreak: "break-all",
|
||||||
|
color: 'red'
|
||||||
|
},
|
||||||
dmListItemContainer: {
|
dmListItemContainer: {
|
||||||
height: 100
|
height: 100
|
||||||
},
|
},
|
||||||
@@ -105,7 +109,7 @@ const styles = {
|
|||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
backgroundColor: '#1da1f2',
|
backgroundColor: '#1da1f2',
|
||||||
width: 300
|
width: 300
|
||||||
},
|
},
|
||||||
messagesGrid: {
|
messagesGrid: {
|
||||||
// // margin: "auto"
|
// // margin: "auto"
|
||||||
// height: "auto",
|
// height: "auto",
|
||||||
@@ -426,9 +430,15 @@ export class directMessages extends Component {
|
|||||||
<Typography
|
<Typography
|
||||||
className={
|
className={
|
||||||
this.state.selectedChannel && this.state.selectedChannel.dmId === channel.dmId ? (
|
this.state.selectedChannel && this.state.selectedChannel.dmId === channel.dmId ? (
|
||||||
classes.dmRecentMessageSelected
|
channel.hasDirectMessagesEnabled ?
|
||||||
|
classes.dmRecentMessageSelected
|
||||||
|
:
|
||||||
|
classes.dmRecentMessageDisabled
|
||||||
) : (
|
) : (
|
||||||
classes.dmRecentMessageUnselected
|
channel.hasDirectMessagesEnabled ?
|
||||||
|
classes.dmRecentMessageUnselected
|
||||||
|
:
|
||||||
|
classes.dmRecentMessageDisabled
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -312,7 +312,7 @@ class user extends Component {
|
|||||||
<Typography variant="body2">{post.body}</Typography>
|
<Typography variant="body2">{post.body}</Typography>
|
||||||
<br />
|
<br />
|
||||||
<Typography variant="body2">
|
<Typography variant="body2">
|
||||||
<b>Topics:</b> {post.microBlogTopics}
|
<b>Topics:</b> {post.microBlogTopics.join(", ")}
|
||||||
</Typography>
|
</Typography>
|
||||||
<br />
|
<br />
|
||||||
<Typography variant="body2" color={"textSecondary"}>
|
<Typography variant="body2" color={"textSecondary"}>
|
||||||
|
|||||||
@@ -269,6 +269,15 @@ class user extends Component {
|
|||||||
</Link>
|
</Link>
|
||||||
) : null;
|
) : null;
|
||||||
|
|
||||||
|
let verifyButtonMarkup = this.state.profile === "Admin" ?
|
||||||
|
<Link to="/verify">
|
||||||
|
<Button className={classes.button} variant="outlined" color="primary">
|
||||||
|
Verify Users
|
||||||
|
</Button>
|
||||||
|
</Link>
|
||||||
|
:
|
||||||
|
null
|
||||||
|
|
||||||
return (
|
return (
|
||||||
this.state.loading ? <CircularProgress size={60} style={{marginTop: "300px"}}></CircularProgress> :
|
this.state.loading ? <CircularProgress size={60} style={{marginTop: "300px"}}></CircularProgress> :
|
||||||
<div>
|
<div>
|
||||||
@@ -278,6 +287,7 @@ class user extends Component {
|
|||||||
<Grid container>
|
<Grid container>
|
||||||
<Grid item sm>
|
<Grid item sm>
|
||||||
{editButtonMarkup}
|
{editButtonMarkup}
|
||||||
|
{verifyButtonMarkup}
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item sm>
|
<Grid item sm>
|
||||||
{/* <Grid container direction="column"> */}
|
{/* <Grid container direction="column"> */}
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ export const getUserData = () => (dispatch) => {
|
|||||||
|
|
||||||
// Sends login data to firebase and sets the user data in Redux
|
// Sends login data to firebase and sets the user data in Redux
|
||||||
export const loginUser = (loginData, history) => (dispatch) => {
|
export const loginUser = (loginData, history) => (dispatch) => {
|
||||||
|
dispatch({type: CLEAR_ERRORS});
|
||||||
dispatch({ type: LOADING_UI });
|
dispatch({ type: LOADING_UI });
|
||||||
axios
|
axios
|
||||||
.post("/login", loginData)
|
.post("/login", loginData)
|
||||||
@@ -57,6 +58,7 @@ export const loginUser = (loginData, history) => (dispatch) => {
|
|||||||
|
|
||||||
// Sends signup data to firebase and sets the user data in Redux
|
// Sends signup data to firebase and sets the user data in Redux
|
||||||
export const signupUser = (newUserData, history) => (dispatch) => {
|
export const signupUser = (newUserData, history) => (dispatch) => {
|
||||||
|
dispatch({type: CLEAR_ERRORS});
|
||||||
dispatch({ type: LOADING_UI });
|
dispatch({ type: LOADING_UI });
|
||||||
axios
|
axios
|
||||||
.post("/signup", newUserData)
|
.post("/signup", newUserData)
|
||||||
|
|||||||
Reference in New Issue
Block a user