diff --git a/hackclub-spotify-bot/src/.env.example b/hackclub-spotify-bot/src/.env.example new file mode 100644 index 0000000..0b5bff2 --- /dev/null +++ b/hackclub-spotify-bot/src/.env.example @@ -0,0 +1,6 @@ +SLACK_CLIENT_ID= +SLACK_CLIENT_SECRET= +SLACK_TOKEN= +SPOTIFY_CLIENT_ID= +SPOTIFY_CLIENT_SECRET= +SPOTIFY_REDIRECT_URI= \ No newline at end of file diff --git a/hackclub-spotify-bot/src/index.js b/hackclub-spotify-bot/src/index.js index ce9cfc7..3d732ad 100644 --- a/hackclub-spotify-bot/src/index.js +++ b/hackclub-spotify-bot/src/index.js @@ -1,40 +1,45 @@ -require('dotenv').config(); -const express = require('express'); -const session = require('express-session'); -const { WebClient } = require('@slack/web-api'); -const { Client } = require('@slack/oauth'); -const { getLoginUrl, refreshToken } = require('./spotify'); -const path = require('path'); +const path = require("path"); +require("dotenv").config({ path: path.join(__dirname, ".env") }); +console.debug(process.env); +const express = require("express"); +const session = require("express-session"); +const { WebClient } = require("@slack/web-api"); +const { InstallProvider } = require("@slack/oauth"); +const { getLoginUrl, refreshToken } = require("./spotify"); const app = express(); // Initialize const web = new WebClient(process.env.SLACK_TOKEN); -const oauth = new Client({ +const oauth = new InstallProvider({ clientId: process.env.SLACK_CLIENT_ID, clientSecret: process.env.SLACK_CLIENT_SECRET, - state: Math.random().toString(36).substring(2), + stateSecret: Math.random().toString(36).substring(2), }); app.use(express.json()); -app.use(express.static(path.join(__dirname, 'public'))); -app.set('view engine', 'ejs'); -app.set('views', 'src/views'); +app.use(express.static(path.join(__dirname, "public"))); +app.set("view engine", "ejs"); +app.set("views", "src/views"); app.use(express.urlencoded({ extended: true })); -app.use(session({ - secret: Math.random().toString(36).substring(2), - resave: false, - saveUninitialized: true, - cookie: { secure: true } -})); +app.use( + session({ + secret: Math.random().toString(36).substring(2), + resave: false, + saveUninitialized: true, + cookie: { secure: true }, + }) +); -app.get('/', (req, res) => { -res.render('index', { title: 'Hack Club Spotify Bot', description: "Contribute to the hackclub spotify playlist!" }); +app.get("/", (req, res) => { + res.render("index", { + title: "Hack Club Spotify Bot", + description: "Contribute to the hackclub spotify playlist!", + }); +}); +app.get("/login", async (req, res) => { + if (req.session.token) { + } }); -app.get('/login', async (req, res) => { - if(req.session.token) { - - } -}) app.listen(process.env.PORT || 3000, () => { - console.log('Example app listening on port 3000!'); -}); \ No newline at end of file + console.log("Example app listening on port 3000!"); +});