Skip to content

Commit

Permalink
Merge pull request #143 from capraconsulting/feature/331
Browse files Browse the repository at this point in the history
Add mailtemplate for trip status left
  • Loading branch information
essoen authored Oct 25, 2017
2 parents 818671a + 9b4966c commit 0fc450e
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 9 deletions.
6 changes: 4 additions & 2 deletions src/components/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ exports.TRIP_STATUSES = {
CLOSED: 'CLOSED',
PRESENT: 'PRESENT',
LEFT: 'LEFT',
NOSHOW: 'NO SHOW'
NOSHOW: 'NOSHOW'
};

/**
Expand Down Expand Up @@ -132,5 +132,7 @@ exports.STANDARD_MAIL_TEMPLATES = {
TRIP_STATUS_REJECTED: `Hi,
<p>Unfortunately, we do not need volunteers in the period you requested.
If you have the opportunity to travel to another destination or in another period,
we appreciate if you would request a new travel at our page. </p>`
we appreciate if you would request a new travel at our page. </p>`,
TRIP_STATUS_LEFT: `Hi,
<p>We can now see that you have left your destination. </p>`
};
9 changes: 7 additions & 2 deletions src/db-helpers/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@ export function createDefaultAdmin(password) {
export function createMailTemplatesForDestination(destination) {
if (!destination.pendingStatusMailTemplateId && // Ensures working migrations
!destination.acceptedStatusMailTemplateId && // and tests
!destination.rejectedStatusMailTemplateId) {
!destination.rejectedStatusMailTemplateId &&
!destination.leftStatusMailTemplateId) {
return Promise.resolve();
}
return Promise.all([ // bulkCreate does not return inserted elements
Expand All @@ -77,13 +78,17 @@ export function createMailTemplatesForDestination(destination) {
}),
db.MailTemplate.create({
html: STANDARD_MAIL_TEMPLATES.TRIP_STATUS_REJECTED
}),
db.MailTemplate.create({
html: STANDARD_MAIL_TEMPLATES.TRIP_STATUS_LEFT
})
])
.spread((mt1, mt2, mt3) => {
.spread((mt1, mt2, mt3, mt4) => {
// Eslind disabled due to reassignment
// Must reassign as it is the instance to be created
destination.pendingStatusMailTemplateId = mt1.id; // eslint-disable-line
destination.acceptedStatusMailTemplateId = mt2.id; // eslint-disable-line
destination.rejectedStatusMailTemplateId = mt3.id; // eslint-disable-line
destination.leftStatusMailTemplateId = mt4.id; // eslint-disable-line
});
}
13 changes: 12 additions & 1 deletion src/models/destination.model.js
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,12 @@ export default function (sequelize, DataTypes) {
allowNull: true
}
});
Destination.belongsTo(models.MailTemplate, {
foreignKey: {
name: 'leftStatusMailTemplateId',
allowNull: true
}
});
Destination.belongsToMany(models.User,
{ through: models.DestinationCoordinator },
{ foreignKey: 'destinationId' });
Expand Down Expand Up @@ -124,12 +130,17 @@ export default function (sequelize, DataTypes) {
}),
db.MailTemplate.create({
html: STANDARD_MAIL_TEMPLATES.TRIP_STATUS_REJECTED
}),
db.MailTemplate.create({
html: STANDARD_MAIL_TEMPLATES.TRIP_STATUS_LEFT
})
])
.spread((pending, accepted, rejected) => {
.spread((pending, accepted, rejected, left) => {
destination.pendingStatusMailTemplateId = pending.id;
destination.acceptedStatusMailTemplateId = accepted.id;
destination.rejectedStatusMailTemplateId = rejected.id;
destination.leftStatusMailTemplateId = left.id;

return destination.save();
})
);
Expand Down
13 changes: 9 additions & 4 deletions test/fixtures/destinations.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
"pendingStatusMailTemplateId": 1,
"acceptedStatusMailTemplateId": 2,
"rejectedStatusMailTemplateId": 3,
"leftStatusMailTemplateId": 4,
"users": [
{
"id" :3,
Expand All @@ -23,7 +24,8 @@
"name" : "Lier",
"pendingStatusMailTemplateId": 1,
"acceptedStatusMailTemplateId": 2,
"rejectedStatusMailTemplateId": 3
"rejectedStatusMailTemplateId": 3,
"leftStatusMailTemplateId": 4
}
},

Expand All @@ -33,7 +35,8 @@
"name" : "Sandnessjoen",
"pendingStatusMailTemplateId": 1,
"acceptedStatusMailTemplateId": 2,
"rejectedStatusMailTemplateId": 3
"rejectedStatusMailTemplateId": 3,
"leftStatusMailTemplateId": 4
}
},

Expand All @@ -43,7 +46,8 @@
"name" : "Asker",
"pendingStatusMailTemplateId": 1,
"acceptedStatusMailTemplateId": 2,
"rejectedStatusMailTemplateId": 3
"rejectedStatusMailTemplateId": 3,
"leftStatusMailTemplateId": 4
}
},

Expand All @@ -53,7 +57,8 @@
"name" : "YtreEnebakk",
"pendingStatusMailTemplateId": 1,
"acceptedStatusMailTemplateId": 2,
"rejectedStatusMailTemplateId": 3
"rejectedStatusMailTemplateId": 3,
"leftStatusMailTemplateId": 4
}
}
]
6 changes: 6 additions & 0 deletions test/fixtures/mailTemplates.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@
"html": "You've been accepted to the destination."
}
},
{
"model": "MailTemplate",
"data": {
"html": "Sadly you've been rejected as a volunteer."
}
},
{
"model": "MailTemplate",
"data": {
Expand Down

0 comments on commit 0fc450e

Please sign in to comment.