Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const sha224 = require('js-sha256').sha224;
- const logger = require('./../core/logger');
- const { User } = require('../models/Models');
- class AuthController {
- authSteam(req, identifier, profile, done) {
- User.findOne({ where: { steamid: profile._json.steamid, vk_id: null } })
- .then(user => {
- const hash = sha224('secret');
- if (!user) {
- return User.create({
- steamid: profile._json.steamid,
- name: profile._json.personaname,
- avatar: profile._json.avatarfull,
- hash
- });
- }
- user.name = profile._json.personaname;
- user.avatar = profile._json.avatarfull;
- user.hash = hash;
- return user.save();
- }).then(user => {
- return done(null, user);
- }).catch(error => {
- logger.error(error);
- return done(error, false, { message:'Authorisation Error! Try again later ...' });
- });
- }
- serializeUser(user, done) {
- done(null, user.id);
- }
- deserializeUser(id, done) {
- User.findOne({ where: { id } })
- .then(user => {
- if (!user) {
- return done(null, false, { message:'User not found!' });
- } else {
- done(null, user);
- }
- }).catch(err => {
- return done(err, false);
- });
- }
- login(req, res, next) {
- if (req.user) {
- res.redirect("/");
- } else {
- next();
- }
- }
- logout(req,res) {
- if (!req.user) {
- res.redirect("/");
- } else {
- req.logout();
- res.redirect('/');
- }
- }
- }
- module.exports = new AuthController();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement