| Server IP : 69.164.203.165 / Your IP : 216.73.216.219 Web Server : nginx/1.18.0 System : Linux localhost 6.14.3-x86_64-linode168 #1 SMP PREEMPT_DYNAMIC Mon Apr 21 19:47:55 EDT 2025 x86_64 User : www-data ( 33) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /opt/homecoming-api/ |
Upload File : |
#!/usr/bin/env nodejs
const express = require('express');
const app = express();
const mysql = require('mysql');
const bodyParser = require('body-parser');
const login = require('./routes/loginroutes');
const csv = require('./routes/csvroutes');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
const mc = mysql.createConnection({
host: 'localhost',
user: 'cameron',
password: 'GnsHMdBF9934eZz2',
database: 'cameron_homecoming'
});
mc.connect();
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});
app.get('/', function(req, res) {
return res.send({ error: true, message: 'hello' })
});
app.post('/login', login.login);
app.get('/registrations', function(req, res) {
mc.query('SELECT * FROM user_registration', function(error, results, fields) {
if (error) throw error;
return res.send( results );
})
});
app.get('/guests/:id', function(req, res) {
console.log('Getting guests for user ' + req.params.id);
mc.query('SELECT * FROM guest_registration WHERE userID = ?', [req.params.id], function(error, results, fields) {
if (error) throw error;
return res.send( results );
})
});
app.post('/delete/:id', function(req, res) {
console.log('Deleting registration for user ' + req.params.id);
mc.query('DELETE FROM guest_registration WHERE userID = ?', [req.params.id], function (error, results, fields) {
if (error) throw error;
mc.query('DELETE FROM user_registration WHERE id = ?', [req.params.id], function(error, results, fields) {
if (error) throw error;
return res.send( results );
});
});
});
app.post('/registration', function(req, res) {
const id = req.body.user.id;
if (!id) {
return res.status(400).send({ error: true, message: 'Please provide ID' });
}
mc.query("UPDATE user_registration SET firstName = ?, midInit = ?, lastName = ?, email = ?, phone = ?, dob = ?, dietary = ?, dietaryNeed = ?, other_specifics = ?, streetAddress1 = ?, streetAddress2 = ?, city = ?, zipcode = ?, state = ?, camAlum = ?, gradYear = ?, facultyOrstaff = ?, department = ?, title = ?, areYou = ?, event1 = ?, event2 = ?, addGuest = ?, paid = ? WHERE id = ?", [
req.body.user.firstName,
req.body.user.midInit,
req.body.user.lastName,
req.body.user.email,
req.body.user.phone,
req.body.user.dob,
req.body.user.dietary,
req.body.user.dietaryNeed,
req.body.user.other_specifice,
req.body.user.streetAddress1,
req.body.user.streetAddress2,
req.body.user.city,
req.body.user.zipcode,
req.body.user.state,
req.body.user.camAlum,
req.body.user.gradYear,
req.body.user.facultyOrstaff,
req.body.user.department,
req.body.user.title,
req.body.user.areYou,
req.body.user.event1,
req.body.user.event2,
req.body.user.addGuest,
req.body.user.paid,
req.body.user.id
], (error, results, fields) => {
if (error) throw error;
if (req.body.user.addGuest === 'no') {
return res.send({ error: false, message: 'User registration updated successfully.' });
}
const newGuests = req.body.guests.map(function(guest, i) {
if (guest.id) {
// update guest
mc.query("UPDATE guest_registration SET firstName = ?, lastName = ?, event1 = ?, hostemail = ?, userID = ? WHERE id = ?", [
guest.firstName,
guest.lastName,
guest.event1,
guest.hostemail,
guest.userID,
guest.id
], (error, results, fields) => {
if (error) throw error;
return results;
});
} else {
// insert guest
mc.query("INSERT INTO guest_registration SET ? ", {
firstName: guest.firstName,
lastName: guest.lastName,
event1: guest.event1,
hostemail: guest.hostemail,
userID: guest.userID
}, (error, results, fields) => {
if (error) throw error;
return results;
});
}
});
res.send({ error: false, data: results, guests: newGuests, message: 'Registration updated successfully.'});
});
});
app.get('/csv/registrations.csv', csv.registrations);
app.get('/csv/guests.csv', csv.guests);
app.listen(8080, function() {
console.log('Node app is running on port 8080');
});