loopback/lib/models/email.js

58 lines
1.6 KiB
JavaScript
Raw Normal View History

/*!
2013-07-03 05:37:31 +00:00
* Module Dependencies.
*/
2013-07-16 17:49:25 +00:00
var Model = require('../loopback').Model
, loopback = require('../loopback');
2013-07-03 05:37:31 +00:00
var properties = {
to: {type: String, required: true},
from: {type: String, required: true},
subject: {type: String, required: true},
text: {type: String},
html: {type: String}
};
/**
2014-10-06 17:15:26 +00:00
* @property {String} to Email addressee. Required.
* @property {String} from Email sender address. Required.
* @property {String} subject Email subject string. Required.
* @property {String} text Text body of email.
* @property {String} html HTML body of email.
*
* @class
* @inherits {Model}
2013-07-03 05:37:31 +00:00
*/
2013-11-11 21:35:54 +00:00
var Email = module.exports = Model.extend('Email', properties);
/**
* Send an email with the given `options`.
*
* Example Options:
*
2014-03-14 17:28:31 +00:00
* ```js
* {
2014-03-14 17:28:31 +00:00
* from: "Fred Foo <foo@blurdybloop.com>", // sender address
* to: "bar@blurdybloop.com, baz@blurdybloop.com", // list of receivers
2014-03-14 17:28:31 +00:00
* subject: "Hello", // Subject line
* text: "Hello world", // plaintext body
* html: "<b>Hello world</b>" // html body
* }
* ```
*
* See https://github.com/andris9/Nodemailer for other supported options.
*
2014-03-14 17:28:31 +00:00
* @options {Object} options See below
* @prop {String} from Senders's email address
* @prop {String} to List of one or more recipient email addresses (comma-delimited)
* @prop {String} subject Subject line
* @prop {String} text Body text
* @prop {String} html Body HTML (optional)
* @param {Function} callback Called after the e-mail is sent or the sending failed
*/
Email.prototype.send = function() {
throw new Error('You must connect the Email Model to a Mail connector');
2014-10-06 17:15:26 +00:00
}