// # Mail API // API for sending Mail var when = require("when"), config = require('../config'), errors = require('../errors'), mail; /** * ## Mail API Methods * * **See:** [API Methods](index.js.html#api%20methods) * @typedef Mail * @param mail */ mail = { /** * ### Send * Send an email * * @public * @param {Mail} object details of the email to send * @returns {Promise} */ send: function (object) { var mailer = require('../mail'); // TODO: permissions return mailer.send(object.mail[0].message) .then(function (data) { delete object.mail[0].options; // Sendmail returns extra details we don't need and that don't convert to JSON delete object.mail[0].message.transport; object.mail[0].status = { message: data.message }; return object; }) .otherwise(function (error) { return when.reject(new errors.EmailError(error.message)); }); }, /** * ### SendTest * Send a test email * * @public * @returns {Promise} */ sendTest: function () { var html = '
Hello there!
' + 'Excellent!' + ' You\'ve successfully setup your email config for your Ghost blog over on ' + config().url + '
' + 'If you hadn\'t, you wouldn\'t be reading this email, but you are, so it looks like all is well :)
' + 'xoxo
' + 'Team Ghost
' +
'https://ghost.org