This commit is contained in:
Max Hunt 2020-05-06 22:53:25 +01:00
parent cb222bc526
commit faa4ab30be
6 changed files with 54 additions and 9 deletions

View File

@ -1676,6 +1676,11 @@
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.4.tgz", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.4.tgz",
"integrity": "sha512-8Df0906+tq/omxuCZD6PqhPaQDYuyJ1d+VITgxoIA8zvQd1ru+nMJcDChHH324MWitIgbVkAkQoGEEVJNpn/PA==" "integrity": "sha512-8Df0906+tq/omxuCZD6PqhPaQDYuyJ1d+VITgxoIA8zvQd1ru+nMJcDChHH324MWitIgbVkAkQoGEEVJNpn/PA=="
}, },
"nodemailer": {
"version": "6.4.6",
"resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.6.tgz",
"integrity": "sha512-/kJ+FYVEm2HuUlw87hjSqTss+GU35D4giOpdSfGp7DO+5h6RlJj7R94YaYHOkoxu1CSaM0d3WRBtCzwXrY6MKA=="
},
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",

View File

@ -17,7 +17,8 @@
"express": "^4.17.1", "express": "^4.17.1",
"firebase-admin": "^8.11.0", "firebase-admin": "^8.11.0",
"firebase-functions": "^3.6.1", "firebase-functions": "^3.6.1",
"morgan": "^1.10.0" "morgan": "^1.10.0",
"nodemailer": "^6.4.6"
}, },
"devDependencies": { "devDependencies": {
"firebase-functions-test": "^0.2.0" "firebase-functions-test": "^0.2.0"

View File

@ -233,7 +233,7 @@ function ship_item() {
firebase.auth().currentUser.getIdToken().then(function(idToken) { firebase.auth().currentUser.getIdToken().then(function(idToken) {
var item_id_element = document.getElementById("productID") var item_id_element = document.getElementById("productID")
var item_id = item_id_element.getAttribute("product_id") var item_id = item_id_element.getAttribute("product_id")
var place_on_sale_button = document.getElementById("shipBtn") var ship_button = document.getElementById("shipBtn")
const url = 'ship-api' const url = 'ship-api'
let data = { let data = {
item: item_id, item: item_id,
@ -249,14 +249,20 @@ function ship_item() {
.then(function(result){ .then(function(result){
console.log(result) console.log(result)
if (result.success == true) { if (result.success == true) {
place_on_sale_button.setAttribute("style", "background: #00DD00; width:200px;") ship_button.setAttribute("style", "background: #00DD00; width:200px;")
place_on_sale_button.innerHTML = "Item shipped!" ship_button.innerHTML = "Item shipped!"
place_on_sale_button.disabled = true ship_button.disabled = true
var sell_button = document.getElementById("sellBtn")
var edit_button = document.getElementById("editBtn")
sell_button.disabled = true
edit_button.disabled = true
} }
else { else {
place_on_sale_button.setAttribute("style", "background: red;") ship_button.setAttribute("style", "background: red;")
place_on_sale_button.disabled = true ship_button.disabled = true
place_on_sale_button.innerHTML = "ERROR" ship_button.innerHTML = "ERROR"
console.log(result.error) console.log(result.error)
} }
}) })

5
package-lock.json generated
View File

@ -3359,6 +3359,11 @@
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.4.tgz", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.4.tgz",
"integrity": "sha512-8Df0906+tq/omxuCZD6PqhPaQDYuyJ1d+VITgxoIA8zvQd1ru+nMJcDChHH324MWitIgbVkAkQoGEEVJNpn/PA==" "integrity": "sha512-8Df0906+tq/omxuCZD6PqhPaQDYuyJ1d+VITgxoIA8zvQd1ru+nMJcDChHH324MWitIgbVkAkQoGEEVJNpn/PA=="
}, },
"nodemailer": {
"version": "6.4.6",
"resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.6.tgz",
"integrity": "sha512-/kJ+FYVEm2HuUlw87hjSqTss+GU35D4giOpdSfGp7DO+5h6RlJj7R94YaYHOkoxu1CSaM0d3WRBtCzwXrY6MKA=="
},
"normalize-path": { "normalize-path": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",

View File

@ -18,6 +18,7 @@
"express": "^4.17.1", "express": "^4.17.1",
"firebase-admin": "^8.11.0", "firebase-admin": "^8.11.0",
"firebase-tools": "^8.2.0", "firebase-tools": "^8.2.0",
"morgan": "^1.10.0" "morgan": "^1.10.0",
"nodemailer": "^6.4.6"
} }
} }

View File

@ -20,6 +20,14 @@ app.use(express.static('views'))
app.set('view engine', 'ejs') app.set('view engine', 'ejs')
app.set('views', __dirname + '/views') app.set('views', __dirname + '/views')
let nodemailer = require('nodemailer')
let transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'noreply.projectgg@gmail.com',
pass: 'kynpef-5paqha-xaVxip'
}
});
app.get("/", function(request, responce) { app.get("/", function(request, responce) {
@ -211,6 +219,7 @@ app.post('/ship-api', function(request, responce){
var productRef = database.ref("/products/"+product) var productRef = database.ref("/products/"+product)
productRef.update({status:"shipped"}) productRef.update({status:"shipped"})
.then(function(){ .then(function(){
sendEmail("maxdebaoli@gmail.com", "Please ship item "+product)
responce.send({success:true, error:null}) responce.send({success:true, error:null})
}) })
.catch(e => {console.log(e)}) .catch(e => {console.log(e)})
@ -224,6 +233,24 @@ app.post('/ship-api', function(request, responce){
} }
}) })
function sendEmail(address, content){
var mailOptions = {
from: 'noreply.projectgg@gmail.com',
to: address,
subject: 'Your Item has been requested',
text: content
}
transporter.sendMail(mailOptions, function(error, info){
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});
}
app.get('*', function(request, responce){ app.get('*', function(request, responce){
responce.render('404.ejs') responce.render('404.ejs')
}) })