Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- passport.use(
- 'local-signup',
- new LocalStrategy(
- {
- usernameField: 'username',
- passwordField: 'password',
- passReqToCallback: true,
- },
- (req, username, password, done) => {
- db.query(
- `SELECT name, email, username FROM aen_users WHERE username = "${username}" OR email = "${
- req.body.email
- }" `,
- {
- type: sequelize.QueryTypes.SELECT,
- },
- )
- .then(user => {
- if (user[0]) {
- return done(null, false, {
- message: 'signUpMessage',
- email: user[0].email == req.body.email,
- username: user[0].username == username,
- });
- }
- let from = 0;
- if (req.session.redirectTo) {
- from = +req.session.redirectTo.split('/player/')[1]
- ? +req.session.redirectTo.split('/player/')[1]
- : 0;
- }
- const newUser = req.body;
- newUser.access = 10;
- db.query(
- `INSERT INTO aen_users(name, username, email, password, access, affiliate)
- VALUES(
- "${newUser.name}",
- "${newUser.username}",
- "${newUser.email}",
- "${bcrypt.hashSync(newUser.password, 10)}",
- "${newUser.access}",
- "${from}"
- )`,
- { type: sequelize.QueryTypes.INSERT },
- )
- .then(
- db
- .query(
- `SELECT id FROM aen_users WHERE username = "${username}"`,
- { type: sequelize.QueryTypes.SELECT },
- )
- .then(data => {
- newUser.id = data[0].id;
- console.log('Promo code');
- console.log(newUser);
- if (req.body.promo) {
- db.query(
- `
- SELECT * FROM sk_promo
- WHERE title = '${newUser.promo}'
- `,
- { type: sequelize.QueryTypes.SELECT },
- ).then(promocode => {
- if (promocode[0]) {
- db.query(
- `
- INSERT INTO sk_userpromo(user_id, promo_id)
- VALUES (${newUser.id}, ${promocode[0].id})
- `,
- { type: sequelize.QueryTypes.INSERT },
- ).then(() => {
- db.query(
- `
- UPDATE aen_users SET affiliate = ${
- promocode[0].affiliate
- }
- WHERE id = ${newUser.id}
- `,
- { type: sequelize.QueryTypes.UPDATE },
- ).then(() => done(null, newUser, {newUser: true}));
- });
- } else {
- return done(null, newUser, {newUser: true});
- }
- });
- } else {
- return done(null, newUser, {newUser: true});
- }
- }),
- )
- .catch(error => {
- done(error);
- });
- return null;
- })
- .catch(error => {
- done(error);
- });
- },
- ),
- );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement