Send confirmation after select wine & text update.
Text update: sendWineConfirmation. Confirmation on what wine recipient selected, date wone and where to pick up the wine.
This commit is contained in:
@@ -2,6 +2,17 @@ const https = require("https");
|
|||||||
const path = require("path");
|
const path = require("path");
|
||||||
const config = require(path.join(__dirname + "/../config/defaults/lottery"));
|
const config = require(path.join(__dirname + "/../config/defaults/lottery"));
|
||||||
|
|
||||||
|
const dateString = (date) => {
|
||||||
|
if (typeof(date) == "string") {
|
||||||
|
date = new Date(date);
|
||||||
|
}
|
||||||
|
const ye = new Intl.DateTimeFormat('en', { year: 'numeric' }).format(date)
|
||||||
|
const mo = new Intl.DateTimeFormat('en', { month: '2-digit' }).format(date)
|
||||||
|
const da = new Intl.DateTimeFormat('en', { day: '2-digit' }).format(date)
|
||||||
|
|
||||||
|
return `${da}-${mo}-${ye}`
|
||||||
|
}
|
||||||
|
|
||||||
async function sendWineSelectMessage(winnerObject) {
|
async function sendWineSelectMessage(winnerObject) {
|
||||||
winnerObject.timestamp_sent = new Date().getTime();
|
winnerObject.timestamp_sent = new Date().getTime();
|
||||||
winnerObject.timestamp_limit = new Date().getTime() * 600000;
|
winnerObject.timestamp_limit = new Date().getTime() * 600000;
|
||||||
@@ -15,6 +26,12 @@ async function sendWineSelectMessage(winnerObject) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function sendWineConfirmation(winnerObject, wineObject, date) {
|
||||||
|
date = dateString(date);
|
||||||
|
return sendMessageToUser(winnerObject.phoneNumber,
|
||||||
|
`Bekreftelse på din vin ${ winnerObject.name }.\nDato vunnet: ${ date }.\nVin valgt: ${ wineObject.name }.\nKan hentes hos ${ config.name } på kontoret. Ha en ellers fin helg!`)
|
||||||
|
}
|
||||||
|
|
||||||
async function sendLastWinnerMessage(winnerObject, wineObject) {
|
async function sendLastWinnerMessage(winnerObject, wineObject) {
|
||||||
console.log(`User ${winnerObject.id} is only one left, chosing wine for him/her.`);
|
console.log(`User ${winnerObject.id} is only one left, chosing wine for him/her.`);
|
||||||
winnerObject.timestamp_sent = new Date().getTime();
|
winnerObject.timestamp_sent = new Date().getTime();
|
||||||
@@ -103,6 +120,7 @@ async function gatewayRequest(body) {
|
|||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
sendWineSelectMessage,
|
sendWineSelectMessage,
|
||||||
|
sendWineConfirmation,
|
||||||
sendLastWinnerMessage,
|
sendLastWinnerMessage,
|
||||||
sendWineSelectMessageTooLate,
|
sendWineSelectMessageTooLate,
|
||||||
sendInitialMessageToWinners
|
sendInitialMessageToWinners
|
||||||
|
|||||||
@@ -80,6 +80,7 @@ const registerWinnerSelection = async (req, res) => {
|
|||||||
let wonWine = await _wineFunctions.findSaveWine(prelotteryWine);
|
let wonWine = await _wineFunctions.findSaveWine(prelotteryWine);
|
||||||
await prelotteryWine.delete();
|
await prelotteryWine.delete();
|
||||||
await _personFunctions.findSavePerson(foundWinner, wonWine, date);
|
await _personFunctions.findSavePerson(foundWinner, wonWine, date);
|
||||||
|
await Message.sendWineConfirmation(foundWinner, wonWine, date);
|
||||||
|
|
||||||
await foundWinner.delete();
|
await foundWinner.delete();
|
||||||
console.info("Saved winners choice.");
|
console.info("Saved winners choice.");
|
||||||
|
|||||||
Reference in New Issue
Block a user