@openinc/parse-server-opendash
Version:
Parse Server Cloud Code for open.INC Stack.
43 lines (42 loc) • 1.42 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.init = init;
const __1 = require("..");
const transformLogin_1 = require("../helper/transformLogin");
const openinc_auth_common_1 = require("./openinc-auth.common");
async function init(name) {
Parse.Cloud.define(name, async function (request) {
const email = (0, transformLogin_1.transformLogin)(request.params.email);
const user = await new Parse.Query(Parse.User)
.equalTo("email", email)
.first({ useMasterKey: true });
if (!user) {
throw new Parse.Error(Parse.Error.OBJECT_NOT_FOUND, "No user was found with the given email.");
}
const { url } = await (0, openinc_auth_common_1.createToken)("password-reset", user.id, request.params.url);
await (0, __1.sendTemplateEmail)({
template: "openinc-auth-password-reset",
subject: "Passwort zurücksetzen / Password reset",
to: email,
fallback: url,
data: {
link: url,
},
});
return {
success: true,
};
}, {
requireUser: false,
fields: {
url: {
required: true,
type: String,
},
email: {
required: true,
type: String,
},
},
});
}
;