backenddeepali 1.0.0 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,17 @@
1
+ const User = require("../Models/UserSchema");
2
+
3
+ const allusers = async (req, res) => {
4
+ User.find({}, (err, data) => {
5
+ if (data) {
6
+ console.log(req.user.EmailId);
7
+ var alldata = data.filter((i) => i.EmailId !== req.user.EmailId);
8
+ console.log(alldata.length);
9
+ res.json(alldata);
10
+ // res.send(data)
11
+ } else {
12
+ res.send(err);
13
+ }
14
+ });
15
+ };
16
+
17
+ module.exports={allusers}
@@ -0,0 +1,24 @@
1
+ const User = require("../Models/UserSchema");
2
+
3
+ const block_Unblock_User = async (req, res) => {
4
+ const found = await User.findById(req.body.id);
5
+ if (found) {
6
+ found.Isblock = !found.Isblock;
7
+ await found.save();
8
+ if (found.Isblock) {
9
+ res.send({
10
+ msg: found.EmailId + " is blocked by admin",
11
+ });
12
+ } else {
13
+ res.send({
14
+ msg: found.EmailId + " is unblocked by admin",
15
+ });
16
+ }
17
+ } else {
18
+ res.send({
19
+ msg: "User not found in database",
20
+ });
21
+ }
22
+ };
23
+
24
+ module.exports={block_Unblock_User}
@@ -0,0 +1,34 @@
1
+ const Enquiry = require("../Models/enquirySchema");
2
+
3
+ const contactshow = async (req, res) => {
4
+ try {
5
+ Enquiry.find({}, (err, data) => {
6
+ if (err) throw err;
7
+ // console.log(data);
8
+ console.log("data", data);
9
+
10
+ res.send({
11
+ message: "Account details",
12
+ status: "true",
13
+ sessionExist: "1",
14
+ response: {
15
+ data: data,
16
+ },
17
+ });
18
+ // res.send(data);
19
+ console.log(data);
20
+ });
21
+ } catch (err) {
22
+ // console.log("error", err);
23
+ res.send({
24
+ message: `account show api fail because ${err.message} `,
25
+ status: "false",
26
+ sessionExist: "0",
27
+ response: {
28
+ data: null,
29
+ },
30
+ });
31
+ }
32
+ };
33
+
34
+ module.exports={contactshow}
@@ -0,0 +1,52 @@
1
+ const Enquiry = require("../Models/enquirySchema");
2
+
3
+ const contactus = async (req, res) => {
4
+ const { name, email, contact, message } = req.body;
5
+ try {
6
+ if (name && email && contact && message) {
7
+ const enquiry = new Enquiry({
8
+ Name: name,
9
+ Email: email,
10
+ Phone: contact,
11
+ Message: message,
12
+ });
13
+ await enquiry.save();
14
+ res.send({
15
+ message: "Admin will contact to you soon",
16
+ status: "true",
17
+ sessionExist: "1",
18
+ response: {
19
+ data: {
20
+ id: req.user._id,
21
+ full_name: req.user.Fullname,
22
+ email: req.user.EmailId,
23
+ mobile: req.user.Contact,
24
+ token: req.user.JWTToken,
25
+ },
26
+ },
27
+ });
28
+ } else {
29
+ res.send({
30
+ message: "Please Enter all required fields",
31
+ status: "false",
32
+ sessionExist: "0",
33
+ response: {
34
+ data: null,
35
+ },
36
+ });
37
+ }
38
+ } catch (err) {
39
+ console.log( err);
40
+ res.send({
41
+ message: "Server error contact api fail",
42
+ status: "false",
43
+ sessionExist: "0",
44
+ response: {
45
+ data: null,
46
+ },
47
+ });
48
+ }
49
+ };
50
+
51
+ module.exports={contactus}
52
+
@@ -1,5 +1,5 @@
1
1
  const Profile = require("../Models/UserProfile");
2
- const domain = "http://localhost:4000/images/";
2
+ const domain = "http://localhost:4000/assets/";
3
3
 
4
4
 
5
5
  const createprofile = async (req, res) => {
@@ -0,0 +1,26 @@
1
+ const Profile = require("../Models/UserProfile");
2
+ const mongoose = require("mongoose");
3
+
4
+ const deleteprofile = async (req, res) => {
5
+ const { user_id } = req.body;
6
+ try {
7
+ if (user_id) {
8
+ const profiledelete = await Profile.deleteOne({
9
+ _id: mongoose.Types.ObjectId(`${user_id}`),
10
+ });
11
+ if (profiledelete.deletedCount == 1) {
12
+ return res.send("profile deleted");
13
+ } else {
14
+ return res.send("Fail to delete profile ");
15
+ }
16
+ }
17
+ return res.send("Please select a profile ");
18
+ } catch (err) {
19
+ res.json({
20
+ msg: `Failed to delete profile because ${err.message}`,
21
+ });
22
+ console.log(err);
23
+ }
24
+ };
25
+
26
+ module.exports = { deleteprofile };
@@ -0,0 +1,65 @@
1
+ const Profile = require("../Models/UserProfile");
2
+ const domain = "http://localhost:4000/assets/";
3
+
4
+ const editprofile = async (req, res) => {
5
+ const { firstname, lastname, age, gender, state, address, email } = req.body;
6
+ try {
7
+ var filenames = "";
8
+ if (req.file) {
9
+ filenames = domain + req.file.filename;
10
+ }
11
+ if (firstname && age) {
12
+ // console.log(re.user._id);
13
+ const editprofile = await Profile.findOne({ userId: req.user._id });
14
+ editprofile.Firstname = firstname ? firstname : editprofile.Firstname;
15
+ editprofile.Lastname = lastname ? lastname : editprofile.Lastname;
16
+ editprofile.Age = age ? age : editprofile.Age;
17
+ editprofile.Gender = gender ? gender : editprofile.Gender;
18
+ editprofile.State = state ? state : editprofile.State;
19
+ editprofile.Address = address ? address : editprofile.Address;
20
+ editprofile.EmailId = email ? email : editprofile.EmailId;
21
+ editprofile.Image = filenames != "" ? filenames : editprofile.Image;
22
+
23
+ await editprofile.save();
24
+ res.send({
25
+ message: "Profile updated successfully",
26
+ status: "true",
27
+ sessionExist: "1",
28
+ response: {
29
+ data: {
30
+ Firstname: editprofile.Firstname,
31
+ Lastname: editprofile.Lastname,
32
+ userId: editprofile.userId,
33
+ Image: filenames,
34
+ Age: editprofile.Age,
35
+ Gender: editprofile.Gender,
36
+ State: editprofile.State,
37
+ Address: editprofile.Address,
38
+ EmailId: editprofile.EmailId,
39
+ },
40
+ },
41
+ });
42
+ } else {
43
+ res.send({
44
+ message: "Please enter player name and age",
45
+ status: "false",
46
+ sessionExist: "1",
47
+ response: {
48
+ data: null,
49
+ },
50
+ });
51
+ }
52
+ } catch (err) {
53
+ res.send({
54
+ message: "server not responding",
55
+ status: "false",
56
+ sessionExist: "0",
57
+ response: {
58
+ data: null,
59
+ },
60
+ });
61
+ console.log(err);
62
+ }
63
+ };
64
+
65
+ module.exports = { editprofile };
@@ -0,0 +1,26 @@
1
+ const FaQS = require("../Models/faqsSchema.js");
2
+ const mongoose = require("mongoose")
3
+
4
+ const faQSdelete = async (req, res) => {
5
+ const { faqs_id } = req.body;
6
+ try {
7
+ if (faqs_id) {
8
+ const deletefaqs = await FaQS.deleteOne({
9
+ _id: mongoose.Types.ObjectId(`${faqs_id}`),
10
+ });
11
+ if (deletefaqs.deletedCount == 1) {
12
+ return res.send("faqs deleted");
13
+ } else {
14
+ return res.send("Fail to delete faqs ");
15
+ }
16
+ }
17
+ return res.send("Please select a faqs ");
18
+ } catch (err) {
19
+ res.json({
20
+ msg: `Failed to delete faqs because ${err.message}`,
21
+ });
22
+ console.log(err);
23
+ }
24
+ };
25
+
26
+ module.exports = { faQSdelete };
@@ -0,0 +1,34 @@
1
+ const FaQS = require("../Models/faqsSchema.js");
2
+
3
+ const faQSshow = async (req, res) => {
4
+ try {
5
+ FaQS.find({}, (err, data) => {
6
+ if (err) throw err;
7
+ // console.log(data);
8
+ console.log("data", data);
9
+
10
+ res.send({
11
+ message: "FaQS details",
12
+ status: "true",
13
+ sessionExist: "1",
14
+ response: {
15
+ data: data,
16
+ },
17
+ });
18
+ // res.send(data);
19
+ console.log(data);
20
+ });
21
+ } catch (err) {
22
+ // console.log("error", err);
23
+ res.send({
24
+ message: `faqs show api fail because ${err.message} `,
25
+ status: "false",
26
+ sessionExist: "0",
27
+ response: {
28
+ data: null,
29
+ },
30
+ });
31
+ }
32
+ };
33
+
34
+ module.exports={faQSshow}
@@ -0,0 +1,57 @@
1
+ const FaQS = require("../Models/faqsSchema.js");
2
+ const domain = "http://localhost:4000/assets/";
3
+
4
+ const faQS = async (req, res) => {
5
+ const { Questions, Answers } = req.body;
6
+ // const userId = req.user._id;
7
+ try {
8
+ var filenames = "";
9
+ if (req.file) {
10
+ filenames = domain + req.file.filename;
11
+ }
12
+ if (Questions) {
13
+ const faqs = new FaQS({
14
+ Questions,
15
+ Answers,
16
+ Videos: filenames,
17
+ });
18
+ await faqs.save();
19
+ console.log(faqs);
20
+ res.send({
21
+ message: "faqs added",
22
+ status: "true",
23
+ sessionExist: "1",
24
+ response: {
25
+ data: {
26
+ Questions: Questions,
27
+ Answers: Answers,
28
+ Videos: filenames,
29
+ },
30
+ },
31
+ });
32
+ } else {
33
+ res.send({
34
+ message: "Please enter Question",
35
+ status: "false",
36
+ sessionExist: "1",
37
+ response: {
38
+ data: null,
39
+ },
40
+ });
41
+ }
42
+ } catch (err) {
43
+ res.send({
44
+ message: "server not responding",
45
+ status: "false",
46
+ sessionExist: "0",
47
+ response: {
48
+ data: null,
49
+ },
50
+ });
51
+ console.log(err);
52
+ }
53
+ };
54
+
55
+ module.exports={
56
+ faQS
57
+ }
@@ -0,0 +1,56 @@
1
+ const FaQS = require("../Models/faqsSchema.js");
2
+ const domain = "http://localhost:4000/assets/";
3
+
4
+ const faQSedit = async (req, res) => {
5
+ const { questions, answers, faqs_id } = req.body;
6
+
7
+ try {
8
+ var filenames = "";
9
+ if (req.file) {
10
+ filenames = domain + req.file.filename;
11
+ }
12
+ if (questions && faqs_id) {
13
+ const editfaQS = await FaQS.findById(faqs_id);
14
+ editfaQS.Questions = questions ? questions : editfaQS.Questions;
15
+ editfaQS.Answers = answers ? answers : editfaQS.Answers;
16
+ editfaQS.Videos = filenames != "" ? filenames : editfaQS.Videos;
17
+
18
+ await editfaQS.save();
19
+ res.send({
20
+ message: "faqs updated successfully",
21
+ status: "true",
22
+ sessionExist: "1",
23
+ response: {
24
+ data: {
25
+ Questions: editfaQS.Questions,
26
+ Answers: editfaQS.Answers,
27
+ Videos: filenames,
28
+ },
29
+ },
30
+ });
31
+ } else {
32
+ res.send({
33
+ message: "Please enter Question",
34
+ status: "false",
35
+ sessionExist: "1",
36
+ response: {
37
+ data: null,
38
+ },
39
+ });
40
+ }
41
+ } catch (err) {
42
+ res.send({
43
+ message: "server not responding",
44
+ status: "false",
45
+ sessionExist: "0",
46
+ response: {
47
+ data: null,
48
+ },
49
+ });
50
+ console.log(err);
51
+ }
52
+ };
53
+
54
+ module.exports = {
55
+ faQSedit,
56
+ };
@@ -0,0 +1,34 @@
1
+ const Profile = require("../Models/UserProfile");
2
+
3
+ const getprofile = async (req, res) => {
4
+ try {
5
+ Profile.findOne({ userId: req.user._id }, (err, data) => {
6
+ if (err) throw err;
7
+ // console.log(data);
8
+ console.log("data", data);
9
+
10
+ res.send({
11
+ message: "Account details",
12
+ status: "true",
13
+ sessionExist: "1",
14
+ response: {
15
+ data: data,
16
+ },
17
+ });
18
+ // res.send(data);
19
+ console.log(data);
20
+ });
21
+ } catch (err) {
22
+ // console.log("error", err);
23
+ res.send({
24
+ message: `account show api fail because ${err.message} `,
25
+ status: "false",
26
+ sessionExist: "0",
27
+ response: {
28
+ data: null,
29
+ },
30
+ });
31
+ }
32
+ };
33
+
34
+ module.exports = { getprofile };
package/Dockerfile ADDED
@@ -0,0 +1,7 @@
1
+ FROM node:14
2
+ WORKDIR /index
3
+ COPY package.json /index
4
+ RUN npm install
5
+ COPY . /index
6
+ CMD node index.js
7
+ EXPOSE 8888
@@ -26,6 +26,10 @@ const UserSchema = new mongoose.Schema({
26
26
  JWTToken: {
27
27
  type: String,
28
28
  },
29
+ Isblock: {
30
+ type: Boolean,
31
+
32
+ },
29
33
  });
30
34
  UserSchema.pre("save", async function (next) {
31
35
  // console.log("Presave function called")
@@ -0,0 +1,22 @@
1
+ const mongoose = require("mongoose");
2
+ const enquirySchema = new mongoose.Schema({
3
+
4
+ Name: {
5
+ type: String,
6
+ required: true,
7
+ },
8
+ Email: {
9
+ type: String,
10
+ required: true,
11
+ },
12
+ Phone: {
13
+ type: Number,
14
+ required: true,
15
+ },
16
+ Message: {
17
+ type: String,
18
+ required: true,
19
+ },
20
+ });
21
+ const Enquiry = mongoose.model("contactus", enquirySchema);
22
+ module.exports = Enquiry
@@ -0,0 +1,15 @@
1
+ const mongoose = require("mongoose");
2
+ const faqsSchema = new mongoose.Schema({
3
+ Questions: {
4
+ type: String,
5
+ required: true,
6
+ },
7
+ Answers: {
8
+ type: String,
9
+ },
10
+ Videos: {
11
+ type: String,
12
+ },
13
+ });
14
+ const FaQS = mongoose.model("faqs", faqsSchema);
15
+ module.exports = FaQS;
@@ -1,17 +1,29 @@
1
1
  const express = require("express");
2
2
  const requireAuth = require("../Middleware/requireAuth");
3
-
4
3
  const router = express.Router();
4
+
5
5
  const signupcontroller = require("../Controllers/signup");
6
6
  const logincontroller = require("../Controllers/login");
7
7
  const forgotpasswordcontroller = require("../Controllers/forgotpassword");
8
8
  const sendotpcontroller = require("../Controllers/sendotp");
9
9
  const resetpasscontroller = require("../Controllers/resetpassword");
10
10
  const changepasscontroller = require("../Controllers/changepassword");
11
- const createprofilecontroller = require("../Controllers/createprofile")
11
+ const createprofilecontroller = require("../Controllers/createprofile");
12
+ const getprofilecontroller = require("../Controllers/getprofile");
13
+ const editprofilecontroller = require("../Controllers/editprofile");
14
+ const deleteprofilecontroller = require("../Controllers/deleteprofile");
15
+ const faqscontroller = require("../Controllers/faqs");
16
+ const faqsshowcontroller = require("../Controllers/faQSshow");
17
+ const faqseditcontroller = require("../Controllers/faqsedit");
18
+ const faqsdeletecontroller = require("../Controllers/faQSdelete");
19
+ const contactuscontroller = require("../Controllers/contactus");
20
+ const contactshowcontroller = require("../Controllers/contactshow");
21
+ const blockunblockcontroller = require("../Controllers/blockunblockuser");
22
+ const getalluserscontroller = require("../Controllers/allusers")
12
23
 
13
24
  const Authorization = require("../Middleware/Authorization");
14
25
  const { uploadimage } = require("../helper/imagehelper");
26
+ const { uploadvideo } = require("../helper/videohelper");
15
27
 
16
28
  //admin authentication api
17
29
  router.post("/auth", requireAuth, (req, res) => {
@@ -56,4 +68,59 @@ router.post(
56
68
  createprofilecontroller.createprofile
57
69
  );
58
70
 
71
+ router.post(
72
+ "/getprofile",
73
+ Authorization,
74
+ requireAuth,
75
+ getprofilecontroller.getprofile
76
+ );
77
+
78
+ router.put(
79
+ "/editprofile",
80
+ uploadimage.single("file"),
81
+ requireAuth,
82
+ editprofilecontroller.editprofile
83
+ );
84
+
85
+ router.post(
86
+ "/deleteprofile",
87
+ requireAuth,
88
+ deleteprofilecontroller.deleteprofile
89
+ );
90
+
91
+ router.post(
92
+ "/faqs",
93
+ uploadvideo.single("file"),
94
+ requireAuth,
95
+ faqscontroller.faQS
96
+ );
97
+
98
+ router.post(
99
+ "/faqsshow",
100
+ Authorization,
101
+ requireAuth,
102
+ faqsshowcontroller.faQSshow
103
+ );
104
+
105
+ router.put(
106
+ "/faqsedit",
107
+ uploadvideo.single("file"),
108
+ requireAuth,
109
+ faqseditcontroller.faQSedit
110
+ );
111
+
112
+ router.post("/faqsdelete", requireAuth, faqsdeletecontroller.faQSdelete);
113
+
114
+ router.post("/contactus", requireAuth, contactuscontroller.contactus);
115
+ router.post(
116
+ "/contactshow",
117
+ Authorization,
118
+ requireAuth,
119
+ contactshowcontroller.contactshow
120
+ );
121
+
122
+ router.post("/blUser", requireAuth, blockunblockcontroller.block_Unblock_User);
123
+
124
+ router.post("/getusers", requireAuth, getalluserscontroller.allusers);
125
+
59
126
  module.exports = router;
Binary file
@@ -3,7 +3,7 @@ const path = require("path");
3
3
 
4
4
  const storage = multer.diskStorage({
5
5
  destination: (req, file, cb) => {
6
- cb(null, "images");
6
+ cb(null, "assets");
7
7
  },
8
8
  filename: (req, file, cb) => {
9
9
  cb(null, file.originalname);
@@ -0,0 +1,26 @@
1
+ const multer = require("multer");
2
+ const path = require("path");
3
+
4
+ const storage = multer.diskStorage({
5
+ destination: (req, file, cb) => {
6
+ cb(null, "assets");
7
+ },
8
+ filename: (req, file, cb) => {
9
+ cb(null, file.originalname);
10
+ },
11
+ });
12
+ const filefilter = (req, file, cb) => {
13
+ if (
14
+ file.mimetype === "video/mp4" ||
15
+ file.mimetype === "video/AVI" ||
16
+ file.mimetype === "video/FLV" ||
17
+ file.mimetype === "video/WMV"
18
+ ) {
19
+ cb(null, true);
20
+ } else {
21
+ cb(null, false);
22
+ }
23
+ };
24
+
25
+ const uploadvideo = multer({ storage: storage, fileFilter: filefilter });
26
+ module.exports = { uploadvideo };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "backenddeepali",
3
- "version": "1.0.0",
3
+ "version": "1.0.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
File without changes
@@ -1,417 +0,0 @@
1
-
2
- const dotenev = require("dotenv");
3
- const bcrypt = require("bcryptjs");
4
- const jwt = require("jsonwebtoken");
5
- const User = require("../Models/UserSchema");
6
- const { transporter } = require("../helper/mailer")
7
- const mongoose = require("mongoose");
8
- dotenev.config();
9
-
10
-
11
- // User signup API
12
- const userRegister = async (req, res) => {
13
- const { name, contact, email, password, cpassword } = req.body;
14
- try {
15
- if (name && contact && email && password && cpassword) {
16
- const userfound = await User.findOne({
17
- EmailId: email,
18
- });
19
- if (userfound) {
20
- res.send({
21
- message: "Email Already registered",
22
- status: "false",
23
- sessionExist: "0",
24
- response: {
25
- data: null,
26
- },
27
- });
28
- } else {
29
- if (password == cpassword) {
30
- const code = Math.floor(1000 + Math.random() * 9000);
31
- const user = new User({
32
- Fullname: name,
33
- EmailId: email,
34
- Contact: contact,
35
- Password: password,
36
- Token: code,
37
- });
38
- await user.save();
39
- res.send({
40
- message: "You are signup successfully",
41
- status: "true",
42
- sessionExist: "1",
43
- response: {
44
- data: {
45
- id: user._id,
46
- full_name: user.Fullname,
47
- email: user.EmailId,
48
- mobile: user.Contact,
49
- token: user.Token,
50
- },
51
- },
52
- });
53
- } else {
54
- res.send({
55
- message: "Password mismatch",
56
- status: "false",
57
- sessionExist: "0",
58
- response: {
59
- data: null,
60
- },
61
- });
62
- }
63
- }
64
- } else {
65
- res.send({
66
- message: "Please fill complete details",
67
- status: "false",
68
- sessionExist: "0",
69
- response: {
70
- data: null,
71
- },
72
- });
73
- }
74
- } catch (err) {
75
- console.log("errror", err);
76
-
77
- res.send({
78
- message: "Failed to register",
79
- status: "false",
80
- sessionExist: "0",
81
- response: {
82
- data: null,
83
- },
84
- });
85
- }
86
- };
87
-
88
- //User login API
89
- const userLogin = async (req, res) => {
90
- const { email, password } = req.body;
91
- // console.log(req.body);
92
- try {
93
- const found = await User.findOne({
94
- EmailId: email,
95
- });
96
- if (email && password) {
97
- if (!found) {
98
- res.send({
99
- message: "Invalid Credentials",
100
- status: "false",
101
- sessionExist: "0",
102
- response: {
103
- data:null
104
- },
105
- });
106
- } else {
107
- const matchPassword = await bcrypt.compare(password, found.Password);
108
- const token = jwt.sign(
109
- {
110
- email: found.EmailId,
111
- },
112
- "NODEJS"
113
- );
114
- matchPassword
115
- ? ((found.JWTToken = token),
116
- await found.save(),
117
- res.send({
118
- message: "You are successfully logged in",
119
- status: "true",
120
- sessionExist: "1",
121
- response: {
122
- data: {
123
- id: found._id,
124
- full_name: found.Fullname,
125
- email: found.EmailId,
126
- mobile: found.Contact,
127
- token: found.JWTToken,
128
-
129
- },
130
- },
131
- }))
132
- : res.send({
133
- message: "Invalid Credentials",
134
- status: "false",
135
- sessionExist: "0",
136
- response: {
137
- data: {
138
- id: null,
139
- full_name: null,
140
- email: null,
141
- mobile: null,
142
- token: null,
143
-
144
- },
145
- },
146
- });
147
- }
148
- } else {
149
- res.send({
150
- message: "Please Enter Credentials",
151
- status: "false",
152
- sessionExist: "0",
153
- response: {
154
- data:null
155
- },
156
- });
157
- }
158
- } catch (err) {
159
- // console.log("Failed to login", err);
160
- res.send({
161
- message: "Login Api fail",
162
- status: "false",
163
- sessionExist: "0",
164
- response: {
165
- data: {
166
- id: null,
167
- full_name: null,
168
- email: null,
169
- mobile: null,
170
- token: null,
171
- isblock: null,
172
- isExist: null,
173
- },
174
- },
175
- });
176
- }
177
- };
178
-
179
- //forgot password API
180
- const userForgotpassword = async (req, res) => {
181
- const { email } = req.body;
182
- try {
183
- if (email) {
184
- const userfound = await User.findOne({
185
- EmailId: email,
186
- });
187
- // console.log(userfound);
188
- if (userfound) {
189
- const code = Math.floor(1000 + Math.random() * 9000);
190
- userfound.Token = code;
191
- await userfound.save();
192
- transporter.sendMail({
193
- to: email,
194
- subject: "Reset Password Verification code",
195
- html: `<h4>Use this ${code} 4 digit code to reset your account Password </h4>`,
196
- });
197
-
198
- res.send({
199
- message: "4-digit code has been sent via email to your email address",
200
- status: "true",
201
- sessionExist: "0",
202
- response: {
203
- data: null
204
- },
205
- });
206
- } else {
207
- res.send({
208
- message:
209
- "4-digit code has been sent via email to your email address ",
210
- status: "true",
211
- sessionExist: "0",
212
- response: {
213
- data: null
214
- },
215
- });
216
- }
217
- } else {
218
- res.send({
219
- message: "Please Enter Emailid",
220
- status: "false",
221
- sessionExist: "0",
222
- response: {
223
- data: null
224
- },
225
- });
226
- }
227
- } catch (err) {
228
- // console.log("Failed to get email ", err);
229
- res.send({
230
- message: "forgot password api fail",
231
- status: "false",
232
- sessionExist: "0",
233
- response: {
234
- data: null
235
- },
236
- });
237
- }
238
- };
239
-
240
- //otp send to email
241
- const sendOTP = async (req, res) => {
242
- const { email, otp } = req.body;
243
-
244
- try {
245
- const userfound = await User.findOne({
246
- EmailId: email,
247
- });
248
- // console.log(userfound, otp);
249
- if ((userfound && otp == userfound.Token) || otp == 1234) {
250
- res.send({
251
- message: "Correct OTP",
252
- status: "true",
253
- sessionExist: "0",
254
- response: {
255
- data: null
256
- },
257
- });
258
- } else {
259
- res.send({
260
- message: "Invalid otp",
261
- status: "false",
262
- sessionExist: "0",
263
- response: {
264
- data: null
265
- },
266
- });
267
- }
268
- } catch (err) {
269
- // console.log("failed to get otp", err);
270
-
271
- res.send({
272
- message: "forgototp api fail",
273
- status: "false",
274
- sessionExist: "0",
275
- response: {
276
- data:null
277
- },
278
- });
279
- }
280
- };
281
-
282
- //reset password
283
- const resetpass = async (req, res) => {
284
- const { email, password, cpassword } = req.body;
285
- try {
286
- if (email && password && cpassword) {
287
- const userfound = await User.findOne({
288
- EmailId: email,
289
- });
290
- if (userfound) {
291
- if (password == cpassword) {
292
- userfound.Password = password;
293
- await userfound.save();
294
- res.send({
295
- message: "Password changed Successfully",
296
- status: "true",
297
- sessionExist: "0",
298
- response: {
299
- data: null
300
- },
301
- });
302
- } else {
303
- res.send({
304
- message: "Password mismatch",
305
- status: "false",
306
- sessionExist: "0",
307
- response: {
308
- data: null
309
- },
310
- });
311
- }
312
- } else {
313
- res.send({
314
- message: "User not found",
315
- status: "false",
316
- sessionExist: "0",
317
- response: {
318
- data: null
319
- },
320
- });
321
- }
322
- } else {
323
- res.send({
324
- message: "Please Fill complete details",
325
- status: "false",
326
- sessionExist: "0",
327
- response: {
328
- data:null
329
- },
330
- });
331
- }
332
- } catch (err) {
333
- res.send({
334
- message: "Server error reset password fail",
335
- status: "false",
336
- sessionExist: "0",
337
- response: {
338
- data: null
339
- },
340
- });
341
- }
342
- };
343
- //change password api
344
- const changepassword = async (req, res) => {
345
- const { oldpassword, newpassword, cnewpassword } = req.body;
346
- try {
347
- if (oldpassword && newpassword && cnewpassword) {
348
- const isMatch = await bcrypt.compare(oldpassword, req.user.Password);
349
- if (isMatch) {
350
- if (newpassword == cnewpassword) {
351
- req.user.Password = newpassword;
352
- await req.user.save(),
353
- res.send({
354
- message: "Password Updated successfully",
355
- status: "true",
356
- sessionExist: "1",
357
- response: {
358
- data: {
359
- id: req.user._id,
360
- full_name: req.user.Fullname,
361
- email: req.user.EmailId,
362
- mobile: req.user.Contact,
363
- token: req.user.JWTToken,
364
-
365
- },
366
- },
367
- });
368
- } else {
369
- res.send({
370
- message: "Password mismatch",
371
- status: "false",
372
- sessionExist: "0",
373
- response: {
374
- data: null
375
- },
376
- });
377
- }
378
- } else {
379
- res.send({
380
- message: "You have entered current password wrong",
381
- status: "false",
382
- sessionExist: "0",
383
- response: {
384
- data: null
385
- },
386
- });
387
- }
388
- } else {
389
- res.send({
390
- message: "Please Enter in all required fields",
391
- status: "false",
392
- sessionExist: "0",
393
- response: {
394
- data:null
395
- },
396
- });
397
- }
398
- } catch (err) {
399
- res.send({
400
- message: "Change password api fail",
401
- status: "false",
402
- sessionExist: "0",
403
- response: {
404
- data: null
405
- },
406
- });
407
- }
408
- };
409
-
410
- module.exports = {
411
- userRegister,
412
- userLogin,
413
- userForgotpassword,
414
- sendOTP,
415
- resetpass,
416
- changepassword,
417
- };