Skip to content

Commit b25aa2b

Browse files
authored
chore(refactor): changes to folders and configs (#834)
1 parent a0f850a commit b25aa2b

File tree

16 files changed

+109
-191
lines changed

16 files changed

+109
-191
lines changed

server/config/passport-googleAuth-strategy.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const passport = require("passport");
22
const googleStrategy = require("passport-google-oauth20").Strategy;
33
const crypto = require("crypto");
4-
const User = require("../models/UserSchema");
4+
const User = require("../schema/user/UserSchema");
55

66
passport.use(
77
/* This code is creating a new instance of the Google OAuth2 authentication strategy for Passport.js.

server/index.js

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,23 +40,21 @@ app.get("/", (req, res) => {
4040
});
4141

4242
//* user routes
43-
app.use("/user", require("./routes/User"));
43+
app.use("/user", require("./routes/user/User"));
4444

4545
//* club routes
46-
app.use("/club", require("./routes/Clubs"));
46+
app.use("/club", require("./routes/club/Club"));
4747

4848
//* Display routes
49-
app.use("/display", require("./routes/Display"));
49+
app.use("/display", require("./routes/display/Display"));
5050

5151
//* Payment routes
52-
app.use("/payment", require("./routes/Payment"));
52+
app.use("/payment", require("./routes/payment/Payment"));
5353

5454
//* Product routes
55-
app.use("/product", require("./routes/Products"));
56-
55+
app.use("/product", require("./routes/shop/Products"));
5756

5857
//* Google Auth routes
59-
app.use("/auth", require("./routes/User"));
58+
app.use("/auth", require("./routes/user/Auth"));
6059

6160
app.listen(port, () => console.log("API IS RUNNING 🚀 at port:", port));
62-

server/models/ReportProblemSchema.js

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

server/package-lock.json

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

server/routes/Clubs.js renamed to server/routes/club/Club.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
//* All routes related to club's LOGIN AND REGISTER
22

33
const express = require("express");
4-
const Club = require("../models/ClubsSchema");
4+
const Club = require("../../schema/club/ClubSchema");
55
const router = express.Router();
66
const bcrypt = require("bcryptjs");
7-
const Events = require("../models/EventsSchema");
7+
const Events = require("../../schema/club/EventSchema");
88
var jwt = require("jsonwebtoken");
99

1010
//* Route 1 - Club Registration

server/routes/Display.js renamed to server/routes/display/Display.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
//* All routes related to club's LOGIN AND REGISTER
22

33
const express = require("express");
4-
const Club = require("../models/ClubsSchema");
5-
const User = require("../models/UserSchema");
6-
const Events = require("../models/EventsSchema");
4+
const Club = require("../../schema/club/ClubSchema");
5+
const User = require("../../schema/user/UserSchema");
6+
const Events = require("../../schema/club/EventSchema");
77
const router = express.Router();
88

99
//* Route 1 - Show all avaialble Users in the DB
File renamed without changes.

server/routes/Products.js renamed to server/routes/shop/Products.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//* All routes related to Product's
22

33
const express = require("express");
4-
const Products = require("../models/ProductSchema");
4+
const Products = require("../../schema/shop/ProductSchema");
55
const router = express.Router();
66

77
//* Route 1 - Adding Products

server/routes/user/Auth.js

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
const express = require("express");
2+
const router = express.Router();
3+
var jwt = require("jsonwebtoken");
4+
const passport = require("passport");
5+
6+
//* Route 5 - google authentication
7+
router.get("/google", (req, res) => {
8+
const googleAuthURL = "https://accounts.google.com/o/oauth2/v2/auth";
9+
10+
const params = new URLSearchParams({
11+
response_type: "code",
12+
redirect_uri: process.env.CALLBACK_URL,
13+
scope: "profile email ",
14+
client_id: process.env.CLIENT_ID,
15+
});
16+
17+
const redirectURL = `${googleAuthURL}?${params}`;
18+
res.redirect(redirectURL);
19+
});
20+
21+
//* Route 6 - google authentication callback
22+
router.get(
23+
"/google/callback",
24+
passport.authenticate("google", {
25+
successRedirect: process.env.successURL,
26+
failureRedirect: "/login/failed",
27+
}),
28+
);
29+
30+
//* Route 7 - google authentication failed
31+
router.get("/login/failed", (req, res) => {
32+
res
33+
.status(401)
34+
.json({ error: true, message: "User failed to authenticate." });
35+
});
36+
37+
//* Route 8 - google authentication success
38+
router.get("/login/success", (req, res) => {
39+
if (req.user) {
40+
const data = { User: { id: req.user.email } };
41+
42+
res.status(200).json({
43+
success: true,
44+
error: false,
45+
message: "Successfully Loged In",
46+
user: req.user,
47+
accessToken: jwt.sign(data, process.env.JWT_SECRET),
48+
});
49+
} else {
50+
res.status(403).json({ error: true, message: "Not Authorized" });
51+
}
52+
});
53+
54+
//* Route 9 - google authentication logout
55+
router.get("/logout", (req, res) => {
56+
req.logout(function (err) {
57+
if (err) {
58+
console.log(err);
59+
return;
60+
}
61+
res.json({ success: true });
62+
});
63+
});
64+
65+
module.exports = router;

0 commit comments

Comments
 (0)