diff --git a/src/Api/dist/app.js b/src/Api/dist/app.js index 629f23c..adae88d 100644 --- a/src/Api/dist/app.js +++ b/src/Api/dist/app.js @@ -9,6 +9,7 @@ const cors_1 = __importDefault(require("cors")); // import ErrorMiddleware from './middleware/error.middleware'; const body_parser_1 = __importDefault(require("body-parser")); const mongoose_1 = __importDefault(require("mongoose")); +const cookie_parser_1 = __importDefault(require("cookie-parser")); class App { constructor(controllers, port) { this.express = (0, express_1.default)(); @@ -22,6 +23,7 @@ class App { initialiseMiddleware() { // this.express.use(helmet()); this.express.use((0, cors_1.default)()); + this.express.use((0, cookie_parser_1.default)()); // this.express.use(morgan('dev')); this.express.use(express_1.default.json()); this.express.use(express_1.default.urlencoded({ extended: false })); diff --git a/src/Api/dist/app.js.map b/src/Api/dist/app.js.map index 3b2404e..0497168 100644 --- a/src/Api/dist/app.js.map +++ b/src/Api/dist/app.js.map @@ -1 +1 @@ -{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";;;;;AAAA,sDAA+C;AAC/C,yCAAyC;AACzC,gDAAwB;AAIxB,+DAA+D;AAC/D,8DAAqC;AACrC,wDAAgC;AAOhC,MAAM,GAAG;IAOL,YAAY,WAAyB,EAAE,IAAY;QAC/C,IAAI,CAAC,OAAO,GAAG,IAAA,iBAAO,GAAE,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAExC,kCAAkC;IACtC,CAAC;IAEO,oBAAoB;QACxB,8BAA8B;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QACzB,mCAAmC;QACnC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1D,mCAAmC;QACnC,OAAO;QACP,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC;YACnC,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC,CAAC;IAEV,CAAC;IAEO,qBAAqB,CAAC,WAAyB;QACnD,WAAW,CAAC,OAAO,CAAC,CAAC,UAAsB,EAAE,EAAE;YAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACnC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAA;QACR,CAAC,CAAC,CAAC;IACP,CAAC;IAED,4CAA4C;IAC5C,yCAAyC;IACzC,IAAI;IAEG,MAAM;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;YAC/C,OAAO,CAAC,GAAG,CAAC,0CAA0C,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,kBAAkB;QACtB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;QAC/D,MAAM,GAAG,GAAG,uGAAuG,CAAA;QACnH,kBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;aACnE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAE,GAAG,CAAE,CAAC,CAAC;IAC5D,CAAC;CAEJ;AAED,kBAAe,GAAG,CAAC"} \ No newline at end of file +{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";;;;;AAAA,sDAA+C;AAC/C,yCAAyC;AACzC,gDAAwB;AAIxB,+DAA+D;AAC/D,8DAAqC;AACrC,wDAAgC;AAMhC,kEAAyC;AAEzC,MAAM,GAAG;IAOL,YAAY,WAAyB,EAAE,IAAY;QAC/C,IAAI,CAAC,OAAO,GAAG,IAAA,iBAAO,GAAE,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAExC,kCAAkC;IACtC,CAAC;IAEO,oBAAoB;QACxB,8BAA8B;QAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,GAAE,CAAC,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,uBAAY,GAAE,CAAC,CAAC;QAGjC,mCAAmC;QACnC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1D,mCAAmC;QACnC,OAAO;QACP,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC;YACnC,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC,CAAC;IAEV,CAAC;IAEO,qBAAqB,CAAC,WAAyB;QACnD,WAAW,CAAC,OAAO,CAAC,CAAC,UAAsB,EAAE,EAAE;YAC3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACnC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAA;QACR,CAAC,CAAC,CAAC;IACP,CAAC;IAED,4CAA4C;IAC5C,yCAAyC;IACzC,IAAI;IAEG,MAAM;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;YAC/C,OAAO,CAAC,GAAG,CAAC,0CAA0C,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,kBAAkB;QACtB,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;QAC/D,MAAM,GAAG,GAAG,uGAAuG,CAAA;QACnH,kBAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;aACpB,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;aACnE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAE,GAAG,CAAE,CAAC,CAAC;IAC5D,CAAC;CAEJ;AAED,kBAAe,GAAG,CAAC"} \ No newline at end of file diff --git a/src/Api/dist/controller/chat-controller/chatCtrl.js b/src/Api/dist/controller/chat-controller/chatCtrl.js deleted file mode 100644 index 317becf..0000000 --- a/src/Api/dist/controller/chat-controller/chatCtrl.js +++ /dev/null @@ -1,85 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const express_1 = require("express"); -const httpExeption_1 = __importDefault(require("../../middleware/exeption/httpExeption")); -const UserService_1 = __importDefault(require("../../service/UserService")); -const UserValidation_1 = __importDefault(require("../../database/schema/User/UserValidation")); -const ValidatorMiddleware_1 = __importDefault(require("../../middleware/validation/ValidatorMiddleware")); -const authMiddleware_1 = __importDefault(require("../../middleware/authMiddleware")); -const LocationService_1 = __importDefault(require("../../service/LocationService")); -class UserController { - constructor() { - this.path = '/users'; - this.router = (0, express_1.Router)(); - this.userService = new UserService_1.default(); - this.locationService = new LocationService_1.default(); - this.register = (req, res, next) => __awaiter(this, void 0, void 0, function* () { - try { - // the FladId should be created by the Userservice - const { name, email, password, idFlad, idSpotify } = req.body; - console.log(name, email, password, idFlad, idSpotify); - const token = yield this.userService.register(name, email, password, idFlad, idSpotify); - res.status(201).json({ token }); - } - catch (error) { - next(new httpExeption_1.default(400, error.message)); - } - }); - this.login = (req, res, next) => __awaiter(this, void 0, void 0, function* () { - try { - const { email, password } = req.body; - const token = yield this.userService.login(email, password); - res.status(200).json({ token }); - } - catch (error) { - next(new httpExeption_1.default(400, error.message)); - } - }); - this.getUser = (req, res, next) => { - if (!req.user) { - return next(new httpExeption_1.default(404, 'No logged in user')); - } - res.status(200).send({ data: req.user }); - }; - this.getUserNext = (req, res, next) => __awaiter(this, void 0, void 0, function* () { - try { - const longitude = Number(req.params.longitude); - const latitude = Number(req.params.latitude); - //verify::val_int(){ - console.log('woooooooooooooo' + req); - if (isNaN(longitude) || isNaN(latitude)) { - console.log('Impossible de convertir la chaîne en nombre'); - } - //} - const userId = req.user.idFlad; - const musicId = req.params.currentMusic; - const data = yield this.locationService.getNearUser(userId, musicId, latitude, longitude); - console.log(data); - res.status(201).send(data); - } - catch (error) { - next(new httpExeption_1.default(400, 'Cannot create get netUser')); - } - }); - this.initialiseRoutes(); - } - initialiseRoutes() { - this.router.post(`${this.path}/register`, (0, ValidatorMiddleware_1.default)(UserValidation_1.default.register), this.register); - this.router.post(`${this.path}/login`, (0, ValidatorMiddleware_1.default)(UserValidation_1.default.login), this.login); - this.router.get(`${this.path}`, authMiddleware_1.default, this.getUser); - } -} -exports.default = ChatController; -//# sourceMappingURL=chatCtrl.js.map \ No newline at end of file diff --git a/src/Api/dist/controller/chat-controller/chatCtrl.js.map b/src/Api/dist/controller/chat-controller/chatCtrl.js.map deleted file mode 100644 index 0d9e995..0000000 --- a/src/Api/dist/controller/chat-controller/chatCtrl.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"chatCtrl.js","sourceRoot":"","sources":["../../../src/controller/chat-controller/chatCtrl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/Api/dist/controller/spot-controller/spotCtrl.js b/src/Api/dist/controller/spot-controller/spotCtrl.js deleted file mode 100644 index 646d480..0000000 --- a/src/Api/dist/controller/spot-controller/spotCtrl.js +++ /dev/null @@ -1,208 +0,0 @@ -// import Controller from '../Icontroller'; -// import { Router, Request, Response, NextFunction, RequestHandler } from 'express'; -// import HttpException from '../../middleware/exeption/httpExeption'; -// import axios from 'axios'; -// import AES from 'crypto-js' -// import querystring from 'querystring'; -// import qs from 'qs'; -// class SpotifyController implements Controller { -// public path = '/spot'; -// public router = Router(); -// constructor() { -// console.log("useeeee"); -// this.initialiseRoutes(); -// } -// initialiseRoutes() { -// // this.router.post(`${this.path}`,this.createTask); -// this.router.get(`${this.path}/likes/{user}/{id-spot}`,this.like); -// this.router.get(`${this.path}/callback`,this.getAccessToken); -// this.router.post(`${this.path}/refresh`,this.getRefreshToken); -// this.router.get(`${this.path}/spot`, this.getSpot); -// } -// // need to put in ENvironement file -// // private readonly CLIENT_CALLBACK_URL = "http://localhost:8080/callback"; -// private readonly API_URL = "https://accounts.spotify.com/api/token"; -// private readonly CLIENT_ID = "1f1e34e4b6ba48b388469dba80202b10"; -// private readonly CLIENT_SECRET = "779371c6d4994a68b8dd6e84b0873c82"; -// // private readonly CLIENT_CALLBACK_URL = "https://auth.expo.io/@thed47/FLAD//callback"; -// private readonly CALLBACK_2 = 'https://flad-api-production.up.railway.app/api/spotify/callback'; -// private readonly SCOPES ='user-read-private user-read-email user-read-playback-state user-read-currently-playing user-read-recently-played playlist-modify-public ugc-image-upload user-modify-playback-state'; -// private readonly ENCRYPTION_SECRET = new CryptString(16); -// private login = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// console.log("useeeee== login"); -// try { -// // const params = req.body; -// // if (!params.refresh_token) { -// // return res.json({ -// // "error": "Parameter missing" -// // }); -// // } -// // this.spotifyRequest({ -// // grant_type: "authorization_code", -// // redirect_uri: this.CLIENT_CALLBACK_2, -// // // code: params.code -// // }) -// console.log("aloorrr si c'est niquuuuuuuuuuuueeee" +this.CALLBACK_2+ "gennnnnnnnnrree vraiiiiiiiment "); -// res.redirect('https://accounts.spotify.com/authorize?' + -// qs.stringify({ -// response_type: 'code', -// client_id: this.CLIENT_ID, -// scope: this.SCOPES, -// redirect_uri: this.CALLBACK_2, -// // state: this.ENCRYPTION_SECRET.stringCrypt -// })); -// // '?response_type=code' + -// // '&client_id=' + -// // "1f1e34e4b6ba48b388469dba80202b10" + -// // (this.SCOPES ? '&scope=' + encodeURIComponent(this.SCOPES) : '') + -// // '&redirect_uri=' + -// // encodeURIComponent(this.CALLBACK_2) -// // ); -// // .then(session => { -// // let result = { -// // "access_token": session.access_token, -// // "expires_in": session.expires_in, -// // "refresh_token": this.encrypt(session.refresh_token) -// // }; -// // return res.send(result); -// // }) -// // .catch(response => { -// // return res.json(response); -// // }); -// } catch (error) { -// next(new HttpException(400, 'Cannot create spot')); -// } -// }; -// private getRefreshToken = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// console.log('UUse2'); -// try { -// const params = req.query.refresh_token; -// if (!req.query.refresh_token) { -// return res.json({ -// "error": "Parameter refresh_token missing" -// }); -// } -// var authOptions = { -// method: 'POST', -// url: 'https://accounts.spotify.com/api/token', -// data: qs.stringify({ -// grant_type: 'refresh_token', -// refresh_token: params -// }), -// headers: { -// 'Authorization': 'Basic ' + ( Buffer.from(this.CLIENT_ID + ':' + this.CLIENT_SECRET).toString('base64')), -// 'Content-Type' : 'application/x-www-form-urlencoded' -// }, -// json: true -// }; -// // request.post(authOptions, function(error, response, body) { -// // if (!error && response.statusCode === 200) { -// // var access_token = body.access_token; -// // res.send({ -// // 'access_token': access_token -// // }); -// // } -// // }); -// axios(authOptions) -// .then(session => { -// if(session.status === 200){ -// res.send({ -// "access_token": session.data.access_token, -// "expires_in": session.data.expires_in -// }); -// }}); -// console.log("goood"); -// } catch (error) { -// console.log("errur"); -// next(new HttpException(400, 'Cannot create post')); -// } -// } -// public getSpot = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// const spots = [ -// { -// name: "blue", -// sourceUrl: "https://cdns-images.dzcdn.net/images/artist/399e7e760d8fedf3cc2891e9c0c41658/200x200-000000-80-0-0.jpg", -// index: 3 -// }, -// { -// name: "strange history", -// sourceUrl: "https://images.genius.com/339dfe2a7c0adf9a5d08febf29a845f4.1000x1000x1.jpg", -// index: 7 -// }, -// { -// name: "oboy album", -// sourceUrl: "https://i.pinimg.com/originals/ad/cc/d5/adccd58a0d0ff516a6114703cd05810e.jpg", -// index: 1 -// } -// ]; -// try { -// res.send(spots); -// } catch (error) { -// console.log('heuuuuuuuuuuuuuuuuuuuuubizzzaaarrreeee'); -// console.log(error); -// next(new HttpException(400, 'On peut pas avoir darray mec')); -// } } -// private getAccessToken = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// console.log("useeeee== accesToken"); -// var code = req.query.code; -// var state = req.query.state || null; -// // var storedState = req.cookies ? req.cookies[stateKey] : null; -// var authOptions = { -// method: 'POST', -// url: 'https://accounts.spotify.com/api/token', -// data: qs.stringify({ -// code: code, -// redirect_uri: this.CALLBACK_2, -// grant_type: 'authorization_code' -// }), -// headers: { -// 'Authorization': 'Basic ' + ( Buffer.from(this.CLIENT_ID + ':' + this.CLIENT_SECRET).toString('base64')), -// 'Content-Type' : 'application/x-www-form-urlencoded' -// }, -// json: true -// }; -// try { -// var resp = await axios(authOptions); -// if (resp.status === 200) { -// console.log('oon esttt laaa'); -// var access_token = resp.data.access_token; -// var expiration =resp.data.expires_in; -// var refresh = resp.data.refresh_token -// console.log(access_token); -// // res.send({ -// // "access_token": access_token, -// // "expires_in": expiration, -// // "refresh" : refresh -// // }); -// res.redirect('/#'+ -// qs.stringify({ -// "access_token": access_token, -// "expires_in": expiration, -// "refreshuyjfguk" : refresh -// })); -// } -// } catch (error) { -// console.log('heuuuuuuuuuuuuuuuuuuuuubizzzaaarrreeee'); -// console.log(error); -// next(new HttpException(400, 'On peut pas te connecter mec'+ error.message)); -// } -// }; -// } -// export default SpotifyController; -//# sourceMappingURL=spotCtrl.js.map \ No newline at end of file diff --git a/src/Api/dist/controller/spot-controller/spotCtrl.js.map b/src/Api/dist/controller/spot-controller/spotCtrl.js.map deleted file mode 100644 index cb83353..0000000 --- a/src/Api/dist/controller/spot-controller/spotCtrl.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"spotCtrl.js","sourceRoot":"","sources":["../../../src/controller/spot-controller/spotCtrl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/Api/dist/controller/spotify-controller/spotifyCtrl.js b/src/Api/dist/controller/spotify-controller/spotifyCtrl.js index 86823d3..2b4b056 100644 --- a/src/Api/dist/controller/spotify-controller/spotifyCtrl.js +++ b/src/Api/dist/controller/spotify-controller/spotifyCtrl.js @@ -30,6 +30,7 @@ class SpotifyController { this.CALLBACK_2 = 'https://flad-api-production.up.railway.app/api/spotify/callback'; this.SCOPES = 'user-read-private user-read-email user-read-playback-state user-read-currently-playing user-read-recently-played playlist-modify-public ugc-image-upload user-modify-playback-state'; this.ENCRYPTION_SECRET = new crypt_1.default(16); + this.clientRedirect = 'spotify_final_redirect-uri-key'; this.login = (req, res, next) => __awaiter(this, void 0, void 0, function* () { console.log("useeeee== login"); try { @@ -44,6 +45,8 @@ class SpotifyController { // redirect_uri: this.CLIENT_CALLBACK_2, // // code: params.code // }) + const redirectResponse = req.query.redirectUrl ? req.query.redirectUrl : req.headers.referer; + res.cookie(this.clientRedirect, redirectResponse); console.log("aloorrr si c'est niquuuuuuuuuuuueeee" + this.CALLBACK_2 + "gennnnnnnnnrree vraiiiiiiiment "); res.redirect('https://accounts.spotify.com/authorize?' + qs_1.default.stringify({ @@ -109,8 +112,11 @@ class SpotifyController { (0, axios_1.default)(authOptions) .then(session => { if (session.status === 200) { + console.log('### Information : responce ###' + JSON.stringify(session.data)); + console.log('### Information : refresh_token ###' + session.data.refresh_token); res.send({ "access_token": session.data.access_token, + "refresh_token": session.data.refresh_token, "expires_in": session.data.expires_in }); } @@ -153,6 +159,7 @@ class SpotifyController { console.log("useeeee== accesToken"); var code = req.query.code; var state = req.query.state || null; + var storedredirectUri = req.cookies ? req.cookies[this.clientRedirect] : null; // var storedState = req.cookies ? req.cookies[stateKey] : null; var authOptions = { method: 'POST', @@ -181,11 +188,12 @@ class SpotifyController { // "expires_in": expiration, // "refresh" : refresh // }); - res.redirect('/#' + + res.clearCookie(this.clientRedirect); + res.redirect(`${storedredirectUri}?` + qs_1.default.stringify({ "access_token": access_token, "expires_in": expiration, - "refreshuyjfguk": refresh + "refresh_token": refresh })); } } @@ -202,7 +210,7 @@ class SpotifyController { // this.router.post(`${this.path}`,this.createTask); this.router.get(`${this.path}/exchange`, this.login); this.router.get(`${this.path}/callback`, this.getAccessToken); - this.router.post(`${this.path}/refresh`, this.getRefreshToken); + this.router.get(`${this.path}/refresh`, this.getRefreshToken); this.router.get(`${this.path}/spot`, this.getSpot); } } diff --git a/src/Api/dist/controller/spotify-controller/spotifyCtrl.js.map b/src/Api/dist/controller/spotify-controller/spotifyCtrl.js.map index 77ca8d4..362de6f 100644 --- a/src/Api/dist/controller/spotify-controller/spotifyCtrl.js.map +++ b/src/Api/dist/controller/spotify-controller/spotifyCtrl.js.map @@ -1 +1 @@ -{"version":3,"file":"spotifyCtrl.js","sourceRoot":"","sources":["../../../src/controller/spotify-controller/spotifyCtrl.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"spotifyCtrl.js","sourceRoot":"","sources":["../../../src/controller/spotify-controller/spotifyCtrl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/Api/dist/controller/user-controller/userCtrl.js b/src/Api/dist/controller/user-controller/userCtrl.js index 9156ab0..9a94ef4 100644 --- a/src/Api/dist/controller/user-controller/userCtrl.js +++ b/src/Api/dist/controller/user-controller/userCtrl.js @@ -147,16 +147,21 @@ class UserController { }; this.getUserNext = (req, res, next) => __awaiter(this, void 0, void 0, function* () { try { - const longitude = Number(req.params.longitude); - const latitude = Number(req.params.latitude); + const longitude = Number(req.query.longitude); + const latitude = Number(req.query.latitude); //verify::val_int(){ console.log('woooooooooooooo' + req); if (isNaN(longitude) || isNaN(latitude)) { + console.log('============' + longitude); + console.log('============' + latitude); console.log('Impossible de convertir la chaîne en nombre'); } //} const userId = req.user.idFlad; - const musicId = req.params.currentMusic; + const musicId = String(req.query.currentMusic); + console.log('============' + longitude); + console.log('============' + latitude); + console.log('daaaaaaaaaaaaaaaaaaaaaa' + musicId); const data = yield this.locationService.getNearUser(userId, musicId, latitude, longitude); console.log(data); res.status(201).send(data); diff --git a/src/Api/dist/controller/user-controller/userCtrl.js.map b/src/Api/dist/controller/user-controller/userCtrl.js.map index 45eff3c..5b9434b 100644 --- a/src/Api/dist/controller/user-controller/userCtrl.js.map +++ b/src/Api/dist/controller/user-controller/userCtrl.js.map @@ -1 +1 @@ -{"version":3,"file":"userCtrl.js","sourceRoot":"","sources":["../../../src/controller/user-controller/userCtrl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,qCAAkF;AAElF,0FAAmE;AAGnE,4EAAoD;AACpD,+FAAiE;AACjE,0GAAmF;AACnF,qFAA2D;AAC3D,oFAA4D;AAC5D,MAAM,cAAc;IAMhB;QALO,SAAI,GAAG,QAAQ,CAAC;QAChB,WAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;QACjB,gBAAW,GAAG,IAAI,qBAAW,EAAE,CAAC;QAChC,oBAAe,GAAG,IAAI,yBAAe,EAAE,CAAC;QAmChD,+BAA+B;QAC/B,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,mCAAmC;QACnC,YAAY;QAEZ,iCAAiC;QACjC,yEAAyE;QACzE,oDAAoD;QACpD,4DAA4D;QAC5D,aAAa;QAEb,2EAA2E;QAG3E,wBAAwB;QACxB,8DAA8D;QAC9D,QAAQ;QACR,KAAK;QACL,yDAAyD;QACzD,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,mCAAmC;QACnC,YAAY;QACZ,wCAAwC;QACxC,4CAA4C;QAE5C,uEAAuE;QACvE,sCAAsC;QAEtC,QAAQ;QACR,oBAAoB;QACpB,8DAA8D;QAC9D,QAAQ;QAER,IAAI;QACJ,yDAAyD;QACzD,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,mCAAmC;QACnC,YAAY;QACZ,4CAA4C;QAC5C,iEAAiE;QACjE,8EAA8E;QAC9E,2DAA2D;QAE3D,QAAQ;QACR,oBAAoB;QACpB,gEAAgE;QAChE,QAAQ;QAER,IAAI;QAEJ,+BAA+B;QAC/B,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,mCAAmC;QACnC,YAAY;QACZ,wCAAwC;QACxC,4CAA4C;QAC5C,yDAAyD;QACzD,mFAAmF;QACnF,wBAAwB;QACxB,8DAA8D;QAC9D,QAAQ;QACR,KAAK;QAEL,+BAA+B;QAC/B,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,mCAAmC;QACnC,YAAY;QAEZ,4CAA4C;QAC5C,4CAA4C;QAC5C,yFAAyF;QAEzF,iEAAiE;QACjE,gCAAgC;QAChC,sBAAsB;QACtB,sBAAsB;QACtB,0DAA0D;QAC1D,2BAA2B;QAC3B,mCAAmC;QACnC,4BAA4B;QAC5B,gCAAgC;QAChC,4BAA4B;QAC5B,+BAA+B;QAC/B,+BAA+B;QAC/B,2BAA2B;QAC3B,0BAA0B;QAC1B,iBAAiB;QACjB,0CAA0C;QAC1C,iDAAiD;QACjD,4EAA4E;QAC5E,wBAAwB;QACxB,8BAA8B;QAC9B,8DAA8D;QAC9D,QAAQ;QACR,KAAK;QAGG,aAAQ,GAAG,CACf,GAAY,EACZ,GAAa,EACb,IAAkB,EACM,EAAE;YAC1B,IAAI;gBACA,kDAAkD;gBAClD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAG,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC/D,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;gBAEtD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CACzC,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,SAAS,CACZ,CAAC;gBAEF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;aACnC;YAAC,OAAO,KAAW,EAAE;gBAClB,IAAI,CAAC,IAAI,sBAAa,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/C;QACL,CAAC,CAAA,CAAC;QAEM,UAAK,GAAG,CACZ,GAAY,EACZ,GAAa,EACb,IAAkB,EACM,EAAE;YAC1B,IAAI;gBACA,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;gBAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAE5D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;aACnC;YAAC,OAAO,KAAW,EAAE;gBAClB,IAAI,CAAC,IAAI,sBAAa,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;aAC/C;QACL,CAAC,CAAA,CAAC;QAEM,YAAO,GAAG,CACd,GAAY,EACZ,GAAa,EACb,IAAkB,EACH,EAAE;YACjB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;gBACX,OAAO,IAAI,CAAC,IAAI,sBAAa,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC;aAC5D;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEM,gBAAW,GAAG,CAClB,GAAY,EACZ,GAAa,EACb,IAAkB,EACM,EAAE;YAC1B,IAAI;gBACA,MAAM,SAAS,GAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAChD,MAAM,QAAQ,GAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC9C,oBAAoB;gBAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC;gBACzC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;oBACrC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;iBAC9D;gBACD,GAAG;gBACH,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC/B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;gBACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,CAAE,CAAC;gBACxF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAClB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAE9B;YACD,OAAM,KAAW,EAAC;gBACd,IAAI,CAAC,IAAI,sBAAa,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC,CAAC;aAC7D;QAEL,CAAC,CAAA,CAAA;QAxNG,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,IAAI,WAAW,EACvB,IAAA,6BAAoB,EAAC,wBAAS,CAAC,QAAQ,CAAC,EACxC,IAAI,CAAC,QAAQ,CAChB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,IAAI,QAAQ,EACpB,IAAA,6BAAoB,EAAC,wBAAS,CAAC,KAAK,CAAC,EACrC,IAAI,CAAC,KAAK,CACb,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,wBAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,EAAE,wBAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAGxE,WAAW;QACX,oDAAoD;QAEpD,gBAAgB;QAChB,8DAA8D;QAC9D,gBAAgB;QAChB,sDAAsD;QACtD,eAAe;QACf,6DAA6D;QAC7D,eAAe;QACf,gEAAgE;IAEpE,CAAC;CA6LJ;AAED,kBAAe,cAAc,CAAC"} \ No newline at end of file +{"version":3,"file":"userCtrl.js","sourceRoot":"","sources":["../../../src/controller/user-controller/userCtrl.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/Api/dist/model/Message.js b/src/Api/dist/model/Message.js deleted file mode 100644 index 7f46289..0000000 --- a/src/Api/dist/model/Message.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=Message.js.map \ No newline at end of file diff --git a/src/Api/dist/model/Message.js.map b/src/Api/dist/model/Message.js.map deleted file mode 100644 index 3fbefdf..0000000 --- a/src/Api/dist/model/Message.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Message.js","sourceRoot":"","sources":["../../src/model/Message.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/Api/dist/model/factory/MessageFactory.js b/src/Api/dist/model/factory/MessageFactory.js deleted file mode 100644 index d726ad3..0000000 --- a/src/Api/dist/model/factory/MessageFactory.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=MessageFactory.js.map \ No newline at end of file diff --git a/src/Api/dist/model/factory/MessageFactory.js.map b/src/Api/dist/model/factory/MessageFactory.js.map deleted file mode 100644 index 026e1fa..0000000 --- a/src/Api/dist/model/factory/MessageFactory.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"MessageFactory.js","sourceRoot":"","sources":["../../../src/model/factory/MessageFactory.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/Api/dist/service/ChatService.js b/src/Api/dist/service/ChatService.js deleted file mode 100644 index ed4c9b3..0000000 --- a/src/Api/dist/service/ChatService.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=ChatService.js.map \ No newline at end of file diff --git a/src/Api/dist/service/ChatService.js.map b/src/Api/dist/service/ChatService.js.map deleted file mode 100644 index a7ae9de..0000000 --- a/src/Api/dist/service/ChatService.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"ChatService.js","sourceRoot":"","sources":["../../src/service/ChatService.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/Api/dist/service/Notifier.js b/src/Api/dist/service/Notifier.js deleted file mode 100644 index e4f507a..0000000 --- a/src/Api/dist/service/Notifier.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=Notifier.js.map \ No newline at end of file diff --git a/src/Api/dist/service/Notifier.js.map b/src/Api/dist/service/Notifier.js.map deleted file mode 100644 index 0a22445..0000000 --- a/src/Api/dist/service/Notifier.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"Notifier.js","sourceRoot":"","sources":["../../src/service/Notifier.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/Api/dist/service/interfaces/IChatService.js b/src/Api/dist/service/interfaces/IChatService.js deleted file mode 100644 index 3f36422..0000000 --- a/src/Api/dist/service/interfaces/IChatService.js +++ /dev/null @@ -1 +0,0 @@ -//# sourceMappingURL=IChatService.js.map \ No newline at end of file diff --git a/src/Api/dist/service/interfaces/IChatService.js.map b/src/Api/dist/service/interfaces/IChatService.js.map deleted file mode 100644 index de8a972..0000000 --- a/src/Api/dist/service/interfaces/IChatService.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"IChatService.js","sourceRoot":"","sources":["../../../src/service/interfaces/IChatService.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/src/Api/package.json b/src/Api/package.json index 4e4f64e..3626db0 100644 --- a/src/Api/package.json +++ b/src/Api/package.json @@ -10,11 +10,6 @@ "start": "tsc & node .", "test": "echo \"Error: no test specified\" && exit 1" }, - "pre-commit": [ - "ts.check", - "build", - "add-build" - ], "keywords": [], "author": "", "license": "ISC", @@ -32,11 +27,13 @@ "typescript": "^4.9.5" }, "dependencies": { + "@types/cookie-parser": "^1.4.3", "@types/crypto-js": "^4.1.1", "@types/mongoose": "^5.11.97", "@types/request": "^2.48.8", "axios": "^1.2.6", "bcrypt": "^5.1.0", + "cookie-parser": "^1.4.6", "cors": "^2.8.5", "dotenv": "^16.0.3", "express-winston": "^4.2.0", @@ -45,7 +42,6 @@ "mongodb": "^5.0.0", "mongoose": "^6.9.0", "morgan": "^1.10.0", - "mqtt": "^4.3.7", "request": "^2.88.2", "rimraf": "^4.1.2", "swagger-ui-express": "^4.6.0", diff --git a/src/Api/src/app.ts b/src/Api/src/app.ts index 41db4a0..4cb3db9 100644 --- a/src/Api/src/app.ts +++ b/src/Api/src/app.ts @@ -12,6 +12,7 @@ import mongoose from 'mongoose'; // import helmet from 'helmet'; import http from 'http'; +import cookieParser from 'cookie-parser'; class App { public express: Application; @@ -35,6 +36,9 @@ class App { private initialiseMiddleware(): void { // this.express.use(helmet()); this.express.use(cors()); + this.express.use(cookieParser()); + + // this.express.use(morgan('dev')); this.express.use(express.json()); this.express.use(express.urlencoded({ extended: false })); diff --git a/src/Api/src/controller/chat-controller/chatCtrl.ts b/src/Api/src/controller/chat-controller/chatCtrl.ts deleted file mode 100644 index 87f7d07..0000000 --- a/src/Api/src/controller/chat-controller/chatCtrl.ts +++ /dev/null @@ -1,96 +0,0 @@ -import { Router, Request, Response, NextFunction, RequestHandler } from 'express'; -import Controller from '../Icontroller'; -import HttpException from '../../middleware/exeption/httpExeption'; -// import LocationService from '../../service/LocationService'; -import IUser from '../../database/schema/User/UserInterface'; -import UserService from '../../service/UserService'; -import validator from '../../database/schema/User/UserValidation' -import validationMiddleware from '../../middleware/validation/ValidatorMiddleware'; -import authenticator from '../../middleware/authMiddleware' -import LocationService from '../../service/LocationService'; -class ChatController implements Controller { - public path = '/chat'; - public router = Router(); - private chatService = new ChatService(); - - constructor() { - this.initialiseRoutes(); - } - - private initialiseRoutes(): void { - this.router.post( - `${this.path}/register`, - validationMiddleware(validator.register), - this.register - ); - this.router.post( - `${this.path}/login`, - validationMiddleware(validator.login), - this.login - ); - this.router.get(`${this.path}`, authenticator, this.getUser); - - } - - - - private register = async ( - req: Request, - res: Response, - next: NextFunction - ): Promise => { - try { - // the FladId should be created by the Userservice - const { name, email, password , idFlad, idSpotify } = req.body; - console.log(name, email, password, idFlad, idSpotify); - - const token = await this.userService.register( - name, - email, - password, - idFlad, - idSpotify - ); - - res.status(201).json({ token }); - } catch (error : any) { - next(new HttpException(400, error.message)); - } - }; - - private login = async ( - req: Request, - res: Response, - next: NextFunction - ): Promise => { - try { - const { email, password } = req.body; - - const token = await this.userService.login(email, password); - - res.status(200).json({ token }); - } catch (error : any) { - next(new HttpException(400, error.message)); - } - }; - - private getUser = ( - req: Request, - res: Response, - next: NextFunction - ): Response | void => { - if (!req.user) { - return next(new HttpException(404, 'No logged in user')); - } - - res.status(200).send({ data: req.user }); - }; - - - - -} - -export default ChatController; - - diff --git a/src/Api/src/controller/spot-controller/spotCtrl.ts b/src/Api/src/controller/spot-controller/spotCtrl.ts deleted file mode 100644 index 3d762b9..0000000 --- a/src/Api/src/controller/spot-controller/spotCtrl.ts +++ /dev/null @@ -1,236 +0,0 @@ -// import Controller from '../Icontroller'; -// import { Router, Request, Response, NextFunction, RequestHandler } from 'express'; -// import HttpException from '../../middleware/exeption/httpExeption'; -// import axios from 'axios'; -// import AES from 'crypto-js' -// import querystring from 'querystring'; -// import qs from 'qs'; - -// class SpotifyController implements Controller { -// public path = '/spot'; -// public router = Router(); - -// constructor() { -// console.log("useeeee"); - -// this.initialiseRoutes(); -// } -// initialiseRoutes() { -// // this.router.post(`${this.path}`,this.createTask); -// this.router.get(`${this.path}/likes/{user}/{id-spot}`,this.like); -// this.router.get(`${this.path}/callback`,this.getAccessToken); -// this.router.post(`${this.path}/refresh`,this.getRefreshToken); -// this.router.get(`${this.path}/spot`, this.getSpot); - -// } - -// // need to put in ENvironement file -// // private readonly CLIENT_CALLBACK_URL = "http://localhost:8080/callback"; -// private readonly API_URL = "https://accounts.spotify.com/api/token"; -// private readonly CLIENT_ID = "1f1e34e4b6ba48b388469dba80202b10"; -// private readonly CLIENT_SECRET = "779371c6d4994a68b8dd6e84b0873c82"; -// // private readonly CLIENT_CALLBACK_URL = "https://auth.expo.io/@thed47/FLAD//callback"; -// private readonly CALLBACK_2 = 'https://flad-api-production.up.railway.app/api/spotify/callback'; -// private readonly SCOPES ='user-read-private user-read-email user-read-playback-state user-read-currently-playing user-read-recently-played playlist-modify-public ugc-image-upload user-modify-playback-state'; -// private readonly ENCRYPTION_SECRET = new CryptString(16); - -// private login = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { - -// console.log("useeeee== login"); -// try { -// // const params = req.body; -// // if (!params.refresh_token) { -// // return res.json({ -// // "error": "Parameter missing" -// // }); -// // } - -// // this.spotifyRequest({ -// // grant_type: "authorization_code", -// // redirect_uri: this.CLIENT_CALLBACK_2, -// // // code: params.code -// // }) -// console.log("aloorrr si c'est niquuuuuuuuuuuueeee" +this.CALLBACK_2+ "gennnnnnnnnrree vraiiiiiiiment "); -// res.redirect('https://accounts.spotify.com/authorize?' + -// qs.stringify({ -// response_type: 'code', -// client_id: this.CLIENT_ID, -// scope: this.SCOPES, -// redirect_uri: this.CALLBACK_2, -// // state: this.ENCRYPTION_SECRET.stringCrypt -// })); - -// // '?response_type=code' + -// // '&client_id=' + -// // "1f1e34e4b6ba48b388469dba80202b10" + -// // (this.SCOPES ? '&scope=' + encodeURIComponent(this.SCOPES) : '') + -// // '&redirect_uri=' + -// // encodeURIComponent(this.CALLBACK_2) -// // ); -// // .then(session => { -// // let result = { -// // "access_token": session.access_token, -// // "expires_in": session.expires_in, -// // "refresh_token": this.encrypt(session.refresh_token) -// // }; -// // return res.send(result); -// // }) -// // .catch(response => { -// // return res.json(response); -// // }); -// } catch (error) { -// next(new HttpException(400, 'Cannot create spot')); -// } - - -// }; - -// private getRefreshToken = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { - -// console.log('UUse2'); - -// try { -// const params = req.query.refresh_token; -// if (!req.query.refresh_token) { -// return res.json({ -// "error": "Parameter refresh_token missing" -// }); -// } -// var authOptions = { -// method: 'POST', -// url: 'https://accounts.spotify.com/api/token', -// data: qs.stringify({ -// grant_type: 'refresh_token', -// refresh_token: params -// }), -// headers: { -// 'Authorization': 'Basic ' + ( Buffer.from(this.CLIENT_ID + ':' + this.CLIENT_SECRET).toString('base64')), -// 'Content-Type' : 'application/x-www-form-urlencoded' -// }, -// json: true -// }; - -// // request.post(authOptions, function(error, response, body) { -// // if (!error && response.statusCode === 200) { -// // var access_token = body.access_token; -// // res.send({ -// // 'access_token': access_token -// // }); -// // } -// // }); -// axios(authOptions) -// .then(session => { -// if(session.status === 200){ - -// res.send({ -// "access_token": session.data.access_token, -// "expires_in": session.data.expires_in -// }); -// }}); -// console.log("goood"); -// } catch (error) { -// console.log("errur"); -// next(new HttpException(400, 'Cannot create post')); -// } - -// } - - - -// public getSpot = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// const spots = [ -// { -// name: "blue", -// sourceUrl: "https://cdns-images.dzcdn.net/images/artist/399e7e760d8fedf3cc2891e9c0c41658/200x200-000000-80-0-0.jpg", -// index: 3 -// }, -// { -// name: "strange history", -// sourceUrl: "https://images.genius.com/339dfe2a7c0adf9a5d08febf29a845f4.1000x1000x1.jpg", -// index: 7 -// }, -// { -// name: "oboy album", -// sourceUrl: "https://i.pinimg.com/originals/ad/cc/d5/adccd58a0d0ff516a6114703cd05810e.jpg", -// index: 1 -// } -// ]; -// try { -// res.send(spots); - -// } catch (error) { -// console.log('heuuuuuuuuuuuuuuuuuuuuubizzzaaarrreeee'); -// console.log(error); -// next(new HttpException(400, 'On peut pas avoir darray mec')); -// } } - - -// private getAccessToken = async ( -// req: Request, -// res: Response, -// next: NextFunction -// ): Promise => { -// console.log("useeeee== accesToken"); -// var code = req.query.code; -// var state = req.query.state || null; -// // var storedState = req.cookies ? req.cookies[stateKey] : null; -// var authOptions = { -// method: 'POST', -// url: 'https://accounts.spotify.com/api/token', -// data: qs.stringify({ -// code: code, -// redirect_uri: this.CALLBACK_2, -// grant_type: 'authorization_code' -// }), -// headers: { -// 'Authorization': 'Basic ' + ( Buffer.from(this.CLIENT_ID + ':' + this.CLIENT_SECRET).toString('base64')), -// 'Content-Type' : 'application/x-www-form-urlencoded' -// }, -// json: true -// }; -// try { -// var resp = await axios(authOptions); -// if (resp.status === 200) { -// console.log('oon esttt laaa'); -// var access_token = resp.data.access_token; -// var expiration =resp.data.expires_in; -// var refresh = resp.data.refresh_token -// console.log(access_token); -// // res.send({ -// // "access_token": access_token, -// // "expires_in": expiration, -// // "refresh" : refresh -// // }); - -// res.redirect('/#'+ -// qs.stringify({ -// "access_token": access_token, -// "expires_in": expiration, -// "refreshuyjfguk" : refresh -// })); -// } -// } catch (error) { -// console.log('heuuuuuuuuuuuuuuuuuuuuubizzzaaarrreeee'); -// console.log(error); -// next(new HttpException(400, 'On peut pas te connecter mec'+ error.message)); -// } - - - -// }; - - -// } -// export default SpotifyController; diff --git a/src/Api/src/controller/spotify-controller/spotifyCtrl.ts b/src/Api/src/controller/spotify-controller/spotifyCtrl.ts index 3930c28..34a1482 100644 --- a/src/Api/src/controller/spotify-controller/spotifyCtrl.ts +++ b/src/Api/src/controller/spotify-controller/spotifyCtrl.ts @@ -7,6 +7,7 @@ import CryptString from './crypt'; import AES from 'crypto-js' import querystring from 'querystring'; import qs from 'qs'; +import cookieParser from 'cookie-parser'; class SpotifyController implements Controller { public path = '/spotify'; @@ -21,7 +22,7 @@ class SpotifyController implements Controller { // this.router.post(`${this.path}`,this.createTask); this.router.get(`${this.path}/exchange`,this.login); this.router.get(`${this.path}/callback`,this.getAccessToken); - this.router.post(`${this.path}/refresh`,this.getRefreshToken); + this.router.get(`${this.path}/refresh`,this.getRefreshToken); this.router.get(`${this.path}/spot`, this.getSpot); } @@ -35,6 +36,7 @@ class SpotifyController implements Controller { private readonly CALLBACK_2 = 'https://flad-api-production.up.railway.app/api/spotify/callback'; private readonly SCOPES ='user-read-private user-read-email user-read-playback-state user-read-currently-playing user-read-recently-played playlist-modify-public ugc-image-upload user-modify-playback-state'; private readonly ENCRYPTION_SECRET = new CryptString(16); + private readonly clientRedirect= 'spotify_final_redirect-uri-key'; private login = async ( req: Request, @@ -56,6 +58,8 @@ class SpotifyController implements Controller { // redirect_uri: this.CLIENT_CALLBACK_2, // // code: params.code // }) + const redirectResponse = req.query.redirectUrl ? req.query.redirectUrl : req.headers.referer; + res.cookie(this.clientRedirect, redirectResponse); console.log("aloorrr si c'est niquuuuuuuuuuuueeee" +this.CALLBACK_2+ "gennnnnnnnnrree vraiiiiiiiment "); res.redirect('https://accounts.spotify.com/authorize?' + qs.stringify({ @@ -101,6 +105,7 @@ class SpotifyController implements Controller { try { const params = req.query.refresh_token; + if (!req.query.refresh_token) { return res.json({ "error": "Parameter refresh_token missing" @@ -131,9 +136,12 @@ class SpotifyController implements Controller { axios(authOptions) .then(session => { if(session.status === 200){ - + console.log('### Information : responce ###' + JSON.stringify( session.data) ); + console.log('### Information : refresh_token ###' + session.data.refresh_token); + res.send({ "access_token": session.data.access_token, + "refresh_token": session.data.refresh_token, "expires_in": session.data.expires_in }); }}); @@ -185,8 +193,11 @@ class SpotifyController implements Controller { next: NextFunction ): Promise => { console.log("useeeee== accesToken"); + var code = req.query.code; var state = req.query.state || null; + var storedredirectUri = req.cookies ? req.cookies[this.clientRedirect] : null; + // var storedState = req.cookies ? req.cookies[stateKey] : null; var authOptions = { method: 'POST', @@ -216,11 +227,12 @@ class SpotifyController implements Controller { // "refresh" : refresh // }); - res.redirect('/#'+ + res.clearCookie(this.clientRedirect); + res.redirect(`${storedredirectUri}?` + qs.stringify({ "access_token": access_token, "expires_in": expiration, - "refreshuyjfguk" : refresh + "refresh_token" : refresh })); } } catch (error) { diff --git a/src/Api/src/controller/user-controller/userCtrl.ts b/src/Api/src/controller/user-controller/userCtrl.ts index c490bec..3ea4efe 100644 --- a/src/Api/src/controller/user-controller/userCtrl.ts +++ b/src/Api/src/controller/user-controller/userCtrl.ts @@ -251,4 +251,4 @@ declare global { user: IUser; } } -} \ No newline at end of file +} diff --git a/src/Api/src/model/Message.ts b/src/Api/src/model/Message.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/Api/src/model/factory/MessageFactory.ts b/src/Api/src/model/factory/MessageFactory.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/Api/src/service/ChatService.ts b/src/Api/src/service/ChatService.ts deleted file mode 100644 index 87855ea..0000000 --- a/src/Api/src/service/ChatService.ts +++ /dev/null @@ -1,63 +0,0 @@ -import UserSchema from "../database/schema/User/UserSchema"; -import token from "../model/token"; - - -class ChatService { - private user = UserSchema; - - /** - * Register a new user - */ - public async sendMessage( - name: string, - email: string, - password: string, - idFlad : string, - idSpotify : string - ): Promise { - try { - const user = await this.user.create({ - name, - email, - password, - idFlad, - idSpotify - }); - - const accessToken = token.createToken(user); - - return accessToken; - } catch (error : any) { - throw new Error(error.message); - } - } - - /** - * Attempt to login a user - */ - public async createConverssation( - email: string, - password: string - ): Promise { - try { - // should maybe creat a method base on id and other information for better security - // need to view with Emre - const user = await this.user.findOne({ email }); - // const user = await this.user.findById(idFlad); - - if (!user) { - throw new Error('Unable to find user with that email address'); - } - - if (await user.isValidPassword(password)) { - return token.createToken(user); - } else { - throw new Error('Wrong credentials given'); - } - } catch (error) { - throw new Error('Unable to create user'); - } - } -} - -export default ChatService; \ No newline at end of file diff --git a/src/Api/src/service/Notifier.ts b/src/Api/src/service/Notifier.ts deleted file mode 100644 index e69de29..0000000 diff --git a/src/Api/src/service/interfaces/IChatService.ts b/src/Api/src/service/interfaces/IChatService.ts deleted file mode 100644 index 635d691..0000000 --- a/src/Api/src/service/interfaces/IChatService.ts +++ /dev/null @@ -1,5 +0,0 @@ -interface IChatService { - sendMessage() : Promise; - getHistory() : Promise;// pagination - createConverssation () :Promise; -}