Skip to content

Commit

Permalink
Merge pull request #2 from harshjain777/main
Browse files Browse the repository at this point in the history
adding model
  • Loading branch information
YashChikhale authored Jan 11, 2025
2 parents 67ee759 + 6725262 commit 70a61e4
Show file tree
Hide file tree
Showing 5 changed files with 117 additions and 1 deletion.
45 changes: 44 additions & 1 deletion Task-4/Pets/adopt.html
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ <h1>Adopt a Pet</h1>
<div class="container">
<section class="adopt-section">
<h2>Fill Out the Form to Adopt Your New Best Friend</h2>
<form action="#" method="post" class="adopt-form">
<form action="#" id="adoptForm" method="post" class="adopt-form">
<label for="name">Your Name:</label>
<input type="text" id="name" name="name" placeholder="Enter your full name" required>

Expand All @@ -41,10 +41,53 @@ <h2>Fill Out the Form to Adopt Your New Best Friend</h2>

<button type="submit">Submit Application</button>
</form>
<div id="responseMessage" style="display:none; margin-top:10px;"></div>
</section>
</div>
<footer>
<p>&copy; 2025 PAWs | <a href="#privacy-policy">Privacy Policy</a></p>
</footer>
<script>
const form = document.getElementById('adoptForm');
const responseMessage = document.getElementById('responseMessage');


form.addEventListener('submit', async (e) => {
e.preventDefault();

const name = document.getElementById('name').value;
const email = document.getElementById('email').value;
const phone = document.getElementById('phone').value;
const address = document.getElementById('address').value;
const pet = document.getElementById('pet').value;
const message = document.getElementById('message').value;

try {
const response = await fetch('http://localhost:8000/api/adoption/pet', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({ userName: name, email, phoneNo: phone,address,petSelected:pet,message }),
});

const data = await response.json();

if (data.success) {
responseMessage.style.color = 'green';
responseMessage.textContent = data.message;
} else {
responseMessage.style.color = 'red';
responseMessage.textContent = 'Failed to send message. Please try again later.';
}
} catch (error) {
responseMessage.style.color = 'red';
responseMessage.textContent = 'An error occurred while sending the message.';
console.error('Error:', error);
}

responseMessage.style.display = 'block';
});
</script>
</body>
</html>
33 changes: 33 additions & 0 deletions server/controllers/adopt.controller.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
const Adopt = require('../models/adopt.model.js')

const AdoptDog = async(req,res)=>{
const {userName,email,phoneNo,address,petSelected,message} = req.body;

try {

const newAdopt = new Adopt({
userName,
email,
phoneNo,
address,
petSelected,
message
})
await newAdopt.save();

res.status(200).json({
success:true,
message:"adoption request sent"
})

} catch (error) {
console.log(error);
res.status(500).json({
success:false,
message:'error while sending request'
})

}
}

module.exports = {AdoptDog}
31 changes: 31 additions & 0 deletions server/models/adopt.model.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
const mongoose = require('mongoose')

const AdoptSchema = new mongoose.Schema({
userName:{
type:String,
required:true
},
email:{
type:String,
required:true
},
phoneNo:{
type:String,
required:true
},
address:{
type:String,
required:true
},
petSelected:{
type:String,
required:true
},
message:{
type:String,
required:true
}
});

const Adopt = mongoose.model('Adopt',AdoptSchema)
module.exports = Adopt;
7 changes: 7 additions & 0 deletions server/router/adopt.router.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
const express = require('express')
const {AdoptDog} = require('../controllers/adopt.controller.js')

const router = express.Router();
router.post('/pet',AdoptDog)

module.exports = router
2 changes: 2 additions & 0 deletions server/server.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ const mongoose = require('mongoose');
const cookieParser = require('cookie-parser')
const cors = require('cors');
const contactMess = require('./router/contact.router.js')
const adoptingSec = require('./router/adopt.router.js')


mongoose.connect(
Expand Down Expand Up @@ -30,6 +31,7 @@ app.use(
app.use(cookieParser());
app.use(express.json());
app.use('/api/contact',contactMess);
app.use('/api/adoption',adoptingSec);
//app.use("/api/admin/products",adminProductRouter)
//app.use("/api/shop/products",shopProductRouter)

Expand Down

0 comments on commit 70a61e4

Please sign in to comment.